E01006871(void* __ebx, void* __edi, int __esi, void* __eflags) {
signed int _t123;
intOrPtr _t124;
int _t126;
char* _t129;
int _t136;
int _t138;
signed int _t140;
int _t143;
int _t145;
int _t146;
int _t165;
short* _t167;
short* _t169;
int _t170;
signed int _t171;
long _t175;
char* _t177;
signed int _t184;
signed int _t185;
signed int _t188;
signed int _t191;
signed int _t192;
signed int _t195;
int _t200;
int _t204;
void* _t205;
void* _t206;
void* _t207;
void* _t208;
void* _t209;
signed int _t211;
signed int _t212;
int _t215;
void* _t217;
short* _t218;
char* _t220;
char* _t222;
void* _t226;
_t210 = __esi;
_push(0x34);
_push(0x10022c0);
E01002EB8(__ebx, __edi, __esi);
_t204 = 0;
_t226 = *0x1009ea0 - _t204;
if(_t226 == 0) {
_t210 = 1;
if(LCMapStringW(0, 0x100, 0x10022bc, 1, 0, 0) == 0) {
_t175 = GetLastError();
__eflags = _t175 - 0x78;
if(_t175 == 0x78) {
*0x1009ea0 = 2;
}
} else {
*0x1009ea0 = 1;
}
}
if( *(_t217 + 0x14) <= _t204) {
L11:
_t123 = *0x1009ea0;
if(_t123 == 2 || _t123 == _t204) {
*(_t217 - 0x28) = _t204;
_t177 = 0;
*(_t217 - 0x3c) = _t204;
__eflags = *(_t217 + 8) - _t204;
if( *(_t217 + 8) == _t204) {
_t146 = *0x1009e88;
*(_t217 + 8) = _t146;
}
__eflags = *(_t217 + 0x20) - _t204;
if( *(_t217 + 0x20) == _t204) {
_t145 = *0x1009e98;
*(_t217 + 0x20) = _t145;
}
_t124 = E010074E7( *(_t217 + 8));
*((intOrPtr*)(_t217 - 0x40)) = _t124;
__eflags = _t124 - 0xffffffff;
if(_t124 != 0xffffffff) {
__eflags = _t124 - *(_t217 + 0x20);
if(__eflags == 0) {
_t211 = LCMapStringA( *(_t217 + 8), *(_t217 + 0xc), *(_t217 + 0x10), *(_t217 + 0x14), *(_t217 + 0x18), *(_t217 + 0x1c));
L60:
__eflags = *(_t217 - 0x28);
if( *(_t217 - 0x28) != 0) {
E01005424( *(_t217 - 0x28));
}
_t126 = _t211;
goto L63;
}
_push(_t204);
_push(_t204);
_t182 = _t217 + 0x14;
_push(_t217 + 0x14);
_push( *(_t217 + 0x10));
_push(_t124);
_push( *(_t217 + 0x20));
_t129 = E01007519(_t177, _t204, _t210, __eflags);
_t220 = &(_t218[0xc]);
*(_t217 - 0x28) = _t129;
__eflags = _t129 - _t204;
if(_t129 == _t204) {
goto L46;
}
_t212 = LCMapStringA( *(_t217 + 8), *(_t217 + 0xc), _t129, *(_t217 + 0x14), _t204, _t204);
*(_t217 - 0x24) = _t212;
__eflags = _t212;
if(_t212 == 0) {
L55:
_t211 = 0;
L57:
__eflags = *(_t217 - 0x3c);
if( *(_t217 - 0x3c) != 0) {
E01005424(_t177);
}
goto L60;
}
*(_t217 - 4) = *(_t217 - 4) & 0x00000000;
E010030D0(_t130 + 0x00000003 & 0xfffffffc, _t182);
*(_t217 - 0x18) = _t220;
_t177 = _t220;
*(_t217 - 0x44) = _t177;
_t184 = _t212;
_t205 = _t177;
_t185 = _t184 >> 2;
_t136 = memset(_t205, 0, _t185 << 2);
_t206 = _t205 + _t185;
_t188 = _t184 & 0x00000003;
memset(_t206, _t136, _t188 << 0);
_t222 = &(_t220[0x18]);
_t207 = _t206 + _t188;
*(_t217 - 4) = *(_t217 - 4) | 0xffffffff;
__eflags = _t177;
if(_t177 != 0) {
L54:
_t138 = LCMapStringA( *(_t217 + 8), *(_t217 + 0xc), *(_t217 - 0x28), *(_t217 + 0x14), _t177, *(_t217 - 0x24));
*(_t217 - 0x24) = _t138;
__eflags = _t138;
if(__eflags != 0) {
_push( *(_t217 + 0x1c));
_push( *(_t217 + 0x18));
_push(_t217 - 0x24);
_push(_t177);
_push( *(_t217 + 0x20));
_push( *((intOrPtr*)(_t217 - 0x40)));
_t140 = E01007519(_t177, _t207, _t212, __eflags);
asm("sbb esi, esi");
_t211 = ~( ~_t140);
goto L57;
}
goto L55;
} else {
_t177 = E0100545C( *(_t217 - 0x24));
__eflags = _t177;
if(_t177 == 0) {
goto L55;
}
_t191 = *(_t217 - 0x24);
_t208 = _t177;
_t192 = _t191 >> 2;
_t143 = memset(_t208, 0, _t192 << 2);
_t209 = _t208 + _t192;
_t195 = _t191 & 0x00000003;
__eflags = _t195;
memset(_t209, _t143, _t195 << 0);
_t222 = &(_t222[0x18]);
_t207 = _t209 + _t195;
*(_t217 - 0x3c) = 1;
goto L54;
}
} else {
goto L46;
}
} else {
if(_t123 != 1) {
L46:
_t126 = 0;
L63:
return E01002EF3(_t126);
}
*(_t217 - 0x2c) = _t204;
*(_t217 - 0x38) = _t204;
*(_t217 - 0x34) = _t204;
if( *(_t217 + 0x20) == _t204) {
_t170 = *0x1009e98;
*(_t217 + 0x20) = _t170;
}
_t215 = MultiByteToWideChar( *(_t217 + 0x20), 1 + (0 | *((intOrPtr*)(_t217 + 0x24)) != _t204) * 8, *(_t217 + 0x10), *(_t217 + 0x14), _t204, _t204);
*(_t217 - 0x30) = _t215;
if(_t215 == 0) {
goto L46;
} else {
*(_t217 - 4) = 1;
E010030D0(_t215 + _t215 + 0x00000003 & 0xfffffffc, _t179);
*(_t217 - 0x18) = _t218;
*(_t217 - 0x1c) = _t218;
*(_t217 - 4) = *(_t217 - 4) | 0xffffffff;
if( *(_t217 - 0x1c) != 0) {
L21:
if(MultiByteToWideChar( *(_t217 + 0x20), 1, *(_t217 + 0x10), *(_t217 + 0x14), *(_t217 - 0x1c), _t215) == 0) {
L36:
if( *(_t217 - 0x34) != 0) {
E01005424( *(_t217 - 0x20));
}
if( *(_t217 - 0x38) != 0) {
E01005424( *(_t217 - 0x1c));
}
_t126 = _t204;
goto L63;
}
_t204 = LCMapStringW( *(_t217 + 8), *(_t217 + 0xc), *(_t217 - 0x1c), _t215, 0, 0);
*(_t217 - 0x2c) = _t204;
if(_t204 == 0) {
goto L36;
}
if(( *(_t217 + 0xd) & 0x00000004) == 0) {
*(_t217 - 4) = 2;
E010030D0(_t204 + _t204 + 0x00000003 & 0xfffffffc, _t179);
*(_t217 - 0x18) = _t218;
*(_t217 - 0x20) = _t218;
*(_t217 - 4) = *(_t217 - 4) | 0xffffffff;
__eflags = *(_t217 - 0x20);
if( *(_t217 - 0x20) != 0) {
L31:
_t165 = LCMapStringW( *(_t217 + 8), *(_t217 + 0xc), *(_t217 - 0x1c), _t215, *(_t217 - 0x20), _t204);
__eflags = _t165;
if(_t165 != 0) {
_push(0);
_push(0);
__eflags = *(_t217 + 0x1c);
if( *(_t217 + 0x1c) != 0) {
_push( *(_t217 + 0x1c));
_push( *(_t217 + 0x18));
} else {
_push(0);
_push(0);
}
_t204 = WideCharToMultiByte( *(_t217 + 0x20), 0, *(_t217 - 0x20), _t204, ??, ??, ??, ??);
}
goto L36;
} else {
_t167 = E0100545C(_t204 + _t204);
*(_t217 - 0x20) = _t167;
__eflags = _t167;
if(_t167 == 0) {
goto L36;
}
*(_t217 - 0x34) = 1;
goto L31;
}
}
if( *(_t217 + 0x1c) != 0 && _t204 <= *(_t217 + 0x1c)) {
LCMapStringW( *(_t217 + 8), *(_t217 + 0xc), *(_t217 - 0x1c), _t215, *(_t217 + 0x18), *(_t217 + 0x1c));
}
goto L36;
} else {
_t179 = _t215 + _t215;
_t169 = E0100545C(_t215 + _t215);
*(_t217 - 0x1c) = _t169;
if(_t169 == 0) {
goto L46;
}
*(_t217 - 0x38) = 1;
goto L21;
}
}
}
}
_t200 = *(_t217 + 0x14);
_t171 = *(_t217 + 0x10);
while(1) {
_t179 = _t200 - 1;
if( *_t171 == 0) {
break;
}
_t171 = _t171 + 1;
if(_t179 != _t204) {
continue;
}
_t179 = _t179 | 0xffffffff;
break;
}
*(_t217 + 0x14) = *(_t217 + 0x14) + (_t171 | 0xffffffff) - _t179;
goto L11;
}
0x01006871
0x01006871
0x01006873
0x01006878
0x0100687d
0x0100687f
0x01006885
0x0100688b
0x010068a0
0x010068aa
0x010068b0
0x010068b3
0x010068b5
0x010068b5
0x010068a2
0x010068a2
0x010068a2
0x010068a0
0x010068c2
0x010068e0
0x010068e0
0x010068e8
0x01006ac8
0x01006acb
0x01006acd
0x01006ad0
0x01006ad3
0x01006ad5
0x01006ada
0x01006ada
0x01006add
0x01006ae0
0x01006ae2
0x01006ae7
0x01006ae7
0x01006aed
0x01006af3
0x01006af6
0x01006af9
0x01006b02
0x01006b05
0x01006c1c
0x01006c1e
0x01006c1e
0x01006c22
0x01006c27
0x01006c2c
0x01006c2d
0x00000000
0x01006c2d
0x01006b0b
0x01006b0c
0x01006b0d
0x01006b10
0x01006b11
0x01006b14
0x01006b15
0x01006b18
0x01006b1d
0x01006b20
0x01006b23
0x01006b25
0x00000000
0x00000000
0x01006b39
0x01006b3b
0x01006b3e
0x01006b40
0x01006bd0
0x01006bd0
0x01006bf5
0x01006bf5
0x01006bf9
0x01006bfc
0x01006c01
0x00000000
0x01006bf9
0x01006b46
0x01006b50
0x01006b55
0x01006b58
0x01006b5a
0x01006b5d
0x01006b61
0x01006b65
0x01006b68
0x01006b68
0x01006b6c
0x01006b6f
0x01006b6f
0x01006b6f
0x01006b81
0x01006b85
0x01006b87
0x01006bb3
0x01006bc3
0x01006bc9
0x01006bcc
0x01006bce
0x01006bd4
0x01006bd7
0x01006bdd
0x01006bde
0x01006bdf
0x01006be2
0x01006be5
0x01006bf1
0x01006bf3
0x00000000
0x01006bf3
0x00000000
0x01006b89
0x01006b91
0x01006b93
0x01006b95
0x00000000
0x00000000
0x01006b97
0x01006b9c
0x01006ba0
0x01006ba3
0x01006ba3
0x01006ba7
0x01006ba7
0x01006baa
0x01006baa
0x01006baa
0x01006bac
0x00000000
0x01006bac
0x00000000
0x00000000
0x00000000
0x010068f6
0x010068f9
0x01006afb
0x01006afb
0x01006c2f
0x01006c37
0x01006c37
0x010068ff
0x01006902
0x01006905
0x0100690b
0x0100690d
0x01006912
0x01006912
0x01006936
0x01006938
0x0100693f
0x00000000
0x01006945
0x01006945
0x01006955
0x0100695a
0x0100695f
0x01006962
0x01006987
0x010069a3
0x010069ba
0x01006aa5
0x01006aa8
0x01006aad
0x01006ab2
0x01006ab6
0x01006abb
0x01006ac0
0x01006ac1
0x00000000
0x01006ac1
0x010069d2
0x010069d4
0x010069d9
0x00000000
0x00000000
0x010069e3
0x01006a12
0x01006a22
0x01006a27
0x01006a2c
0x01006a2f
0x01006a51
0x01006a54
0x01006a6c
0x01006a7a
0x01006a80
0x01006a82
0x01006a84
0x01006a85
0x01006a86
0x01006a89
0x01006a8f
0x01006a92
0x01006a8b
0x01006a8b
0x01006a8c
0x01006a8c
0x01006aa3
0x01006aa3
0x00000000
0x01006a56
0x01006a59
0x01006a5e
0x01006a61
0x01006a63
0x00000000
0x00000000
0x01006a65
0x00000000
0x01006a65
0x01006a54
0x010069e8
0x01006a07
0x01006a07
0x00000000
0x01006989
0x01006989
0x0100698c
0x01006991
0x01006996
0x00000000
0x00000000
0x0100699c
0x00000000
0x0100699c
0x01006987
0x0100693f
0x010068e8
0x010068c4
0x010068c7
0x010068ca
0x010068ca
0x010068ce
0x00000000
0x00000000
0x010068d0
0x010068d3
0x00000000
0x00000000
0x010068d5
0x00000000
0x010068d5
0x010068dd
0x00000000