Function at 0x49d3a0
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x555cdf
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x1928
push ebx
call fcn.00434720
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x74], edi
mov dword [ebp - 4], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 4], 1
lea ecx, [edi + 8]
push 0
mov byte [edi], 0
call fcn.00417ef0
mov byte [ebp - 4], 1
sub esp, 0x10
mov dword [ebp - 0x1c], 1
mov ecx, esp
mov dword [ebp - 0x44], esp
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.004140c0
add esp, 8
mov byte [ebp - 4], 3
mov dword [ebp - 0x18], 0xb0ef96f4
mov dword [ebp - 0x14], 0x952c93bd
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x33c], ecx
mov dword [ebp - 0x18], 0x7dbb92e6
mov dword [ebp - 0x14], 0x14d846fe
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x334], ecx
mov dword [ebp - 0x18], 0xdf9be395
mov dword [ebp - 0x14], 0xf940fadb
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x18], 0x7dbb92e6
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x14], 0x14d846fe
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
movaps xmm1, xmmword [ebp - 0x340]
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x340]
mov dword [ebp - 0x54], ecx
mov ecx, edi
xorps xmm1, xmmword [ebp - 0x60]
push eax
movaps xmmword [ebp - 0x340], xmm1
call fcn.0041af80
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.00413cb0
push 0x104
lea eax, [ebp - 0x938]
push 0
push eax
call fcn.004359b0
add esp, 0xc
lea eax, [ebp - 0x938]
push eax
push 0
push 0
push 0x1a
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
lea eax, [ebx + 8]
push eax
lea edx, [ebp - 0x938]
lea ecx, [ebp - 0x5d8]
call fcn.0041ac50
add esp, 4
mov byte [ebp - 4], 4
lea edx, [ebp - 0x5d8]
mov dword [ebp - 0x18], 0xb0e993c9
mov dword [ebp - 0x14], 0x9c2c93bd
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x360], eax
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x18], 0x13d2bc95
mov dword [ebp - 0x14], 0x14d84697
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], ecx
mov dword [ebp - 0x18], 0xdf9be395
mov dword [ebp - 0x14], 0xf940fadb
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x18], 0x7dbb92e6
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x14], 0x14d846fe
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
movaps xmm1, xmmword [ebp - 0x360]
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x360]
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x4b8]
xorps xmm1, xmmword [ebp - 0x60]
push eax
movaps xmmword [ebp - 0x360], xmm1
call fcn.0041ab20
add esp, 4
mov byte [ebp - 4], 5
lea eax, [ebp - 0x1938]
push 0x1000
push 0
push eax
call fcn.004359b0
add esp, 0xc
lea eax, [ebp - 0x4b8]
cmp dword [ebp - 0x4a4], 0xf
cmova eax, dword [ebp - 0x4b8]
push eax
push 0x1000
lea eax, [ebp - 0x1938]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea esi, [ebp - 0x1938]
mov dword [ebp - 0x78], esi
mov dword [ebp - 0xf0], 0xb9f491c5
mov dword [ebp - 0xec], 0xf92596b2
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xec]
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x34c], ecx
mov dword [ebp - 0xf8], 0x7dbb92e6
mov dword [ebp - 0xf4], 0x14d846fe
mov eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0xf4]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x344], ecx
mov dword [ebp - 0x100], 0xdf9be395
mov dword [ebp - 0xfc], 0xf940fadb
mov eax, dword [ebp - 0x100]
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x108], 0x7dbb92e6
mov dword [ebp - 0x104], 0x14d846fe
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x51c], ecx
mov ecx, dword [ebp - 0x104]
movaps xmm1, xmmword [ebp - 0x350]
mov dword [ebp - 0x518], eax
lea eax, [ebp - 0x350]
push 7
mov dword [ebp - 0x514], ecx
xorps xmm1, xmmword [ebp - 0x520]
push eax
push esi
movaps xmmword [ebp - 0x350], xmm1
call fcn.00440fae
add esp, 0xc
test eax, eax
jne 0x49ef31
push 0x104
push eax
lea eax, [ebp - 0x830]
push eax
call fcn.004359b0
add esp, 0xc
lea edx, [ebp - 0x4b8]
cmp dword [ebp - 0x4a4], 0xf
cmova edx, dword [ebp - 0x4b8]
mov dword [ebp - 0x110], 0xb7ef82c5
mov dword [ebp - 0x10c], 0xf940fadb
mov eax, dword [ebp - 0x110]
mov ecx, dword [ebp - 0x10c]
mov dword [ebp - 0x3a0], eax
mov dword [ebp - 0x39c], ecx
mov dword [ebp - 0x118], 0x7dbb92e6
mov dword [ebp - 0x114], 0x14d846fe
mov eax, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x398], eax
mov dword [ebp - 0x394], ecx
mov dword [ebp - 0x120], 0xdf9be395
mov dword [ebp - 0x11c], 0xf940fadb
mov eax, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x510], eax
push edx
mov dword [ebp - 0x128], 0x7dbb92e6
mov dword [ebp - 0x124], 0x14d846fe
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x508], eax
lea eax, [ebp - 0x830]
push 0x104
push eax
mov dword [ebp - 0x50c], ecx
lea eax, [ebp - 0x3a0]
mov ecx, dword [ebp - 0x124]
movaps xmm1, xmmword [ebp - 0x3a0]
push 0
mov dword [ebp - 0x504], ecx
xorps xmm1, xmmword [ebp - 0x510]
push eax
push esi
movaps xmmword [ebp - 0x3a0], xmm1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x130], 0xdf9be3c9
mov dword [ebp - 0x12c], 0xf940fadb
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x2f0], eax
mov dword [ebp - 0x2ec], ecx
mov dword [ebp - 0x138], 0x7dbb92e6
mov dword [ebp - 0x134], 0x14d846fe
mov eax, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0x2e8], eax
mov dword [ebp - 0x2e4], ecx
mov dword [ebp - 0x140], 0xdf9be395
mov dword [ebp - 0x13c], 0xf940fadb
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0x148], 0x7dbb92e6
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x144], 0x14d846fe
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x4fc], ecx
mov ecx, dword [ebp - 0x144]
movaps xmm1, xmmword [ebp - 0x2f0]
mov dword [ebp - 0x4f8], eax
mov dword [ebp - 0x4f4], ecx
xorps xmm1, xmmword [ebp - 0x500]
movaps xmmword [ebp - 0x2f0], xmm1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2f0]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49d8c0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x5c8]
sub eax, edx
cmp eax, ecx
jb 0x49f068
cmp dword [ebp - 0x5c4], 0xf
lea eax, [ebp - 0x5d8]
push ecx
cmova eax, dword [ebp - 0x5d8]
lea ecx, [ebp - 0x2f0]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x44]
lea ecx, [ebp - 0x68c]
call fcn.0041e8a0
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x830]
or esi, 4
lea edx, [ebp - 0x68c]
push eax
lea ecx, [ebp - 0x62c]
mov dword [ebp - 0x1c], esi
call fcn.0041abb0
add esp, 4
mov byte [ebp - 4], 7
and esi, 0xfffffffb
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x68c]
call fcn.00402df0
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x830]
mov dword [ebp - 0x24], 0
movups xmmword [ebp - 0x38], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49d966
sub ecx, edx
lea eax, [ebp - 0x830]
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.00403040
mov byte [ebp - 4], 9
lea edi, [ebp - 0x38]
cmp dword [ebp - 0x24], 0xf
mov esi, dword [ebp - 0x28]
cmova edi, dword [ebp - 0x38]
test esi, esi
je 0x49dbd6
push esi
push 0x2f
push edi
call fcn.004371a0
add esp, 0xc
test eax, eax
je 0x49dbd6
sub eax, edi
cmp eax, 0xffffffff
je 0x49dbd6
mov dword [ebp - 0x150], 0xdf9be3ba
sub esp, 0x18
mov dword [ebp - 0x14c], 0xf940fadb
mov edx, esp
mov eax, dword [ebp - 0x150]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x2fc], ecx
mov dword [ebp - 0x300], eax
mov dword [ebp - 0x158], 0x7dbb92e6
mov dword [ebp - 0x154], 0x14d846fe
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x2f4], ecx
mov dword [ebp - 0x2f8], eax
mov dword [ebp - 0xe8], 0xdf9be395
mov dword [ebp - 0xe4], 0xf940fadb
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xe4]
mov dword [ebp - 0x160], 0x7dbb92e6
mov dword [ebp - 0x4f0], eax
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x15c], 0x14d846fe
mov eax, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x15c]
movaps xmm1, xmmword [ebp - 0x300]
mov dword [ebp - 0x4e4], ecx
lea ecx, [ebp - 0x300]
mov dword [ebp - 0x4e8], eax
lea esi, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x4f0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x5e4], esp
movaps xmmword [ebp - 0x300], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49daa5
sub ecx, esi
lea eax, [ebp - 0x300]
push ecx
push eax
mov ecx, edx
call fcn.00403040
mov byte [ebp - 4], 0xa
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x5f0], esp
xorps xmm0, xmm0
lea eax, [ebp - 0x38]
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
cmp dword [ebp - 0x24], 0xf
mov edi, dword [ebp - 0x28]
cmova eax, dword [ebp - 0x38]
mov dword [ebp - 0x20], eax
cmp edi, 0x7fffffff
ja 0x49f068
cmp edi, 0xf
ja 0x49db14
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 0xf
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
jmp 0x49db6a
mov eax, edi
or eax, 0xf
mov dword [ebp - 0x5f8], eax
cmp eax, 0x7fffffff
jbe 0x49db2d
mov eax, closesocket
jmp 0x49db42
cmp eax, 0x16
mov dword [ebp - 0x5f4], 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
push esi
call fcn.004032d0
mov ecx, dword [ebp - 0x64]
mov dword [esi + 0x14], ecx
lea ecx, [edi + 1]
push ecx
push dword [ebp - 0x20]
mov dword [esi], eax
push eax
mov dword [esi + 0x10], edi
call fcn.00435270
add esp, 0x14
mov byte [ebp - 4], 0xb
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x488]
call fcn.004e64d0
add esp, 0x30
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x484]
mov ecx, dword [ebp - 0x488]
sub eax, ecx
sar eax, 3
imul eax, eax, 0xaaaaaaab
test eax, eax
je 0x49dbc4
lea eax, [eax + eax*2]
lea eax, [eax - 3]
lea eax, [ecx + eax*8]
lea ecx, [ebp - 0x38]
cmp ecx, eax
je 0x49dbc4
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x49dbba
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.00416130
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x488]
call fcn.004185d0
mov esi, dword [ebp - 0x28]
cmp dword [ebp - 0x24], 0xf
lea edi, [ebp - 0x38]
cmova edi, dword [ebp - 0x38]
test esi, esi
je 0x49de23
push esi
push 0x5c
push edi
call fcn.004371a0
add esp, 0xc
test eax, eax
je 0x49de23
sub eax, edi
cmp eax, 0xffffffff
je 0x49de23
mov dword [ebp - 0x168], 0xdf9be3c9
sub esp, 0x18
mov dword [ebp - 0x164], 0xf940fadb
mov edx, esp
mov eax, dword [ebp - 0x168]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x164]
mov dword [ebp - 0x30c], ecx
mov dword [ebp - 0x310], eax
mov dword [ebp - 0x170], 0x7dbb92e6
mov dword [ebp - 0x16c], 0x14d846fe
mov eax, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x304], ecx
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x178], 0xdf9be395
mov dword [ebp - 0x174], 0xf940fadb
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x174]
mov dword [ebp - 0x180], 0x7dbb92e6
mov dword [ebp - 0x4e0], eax
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x17c], 0x14d846fe
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x17c]
movaps xmm1, xmmword [ebp - 0x310]
mov dword [ebp - 0x4d4], ecx
lea ecx, [ebp - 0x310]
mov dword [ebp - 0x4d8], eax
lea esi, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x4e0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x5ec], esp
movaps xmmword [ebp - 0x310], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49dcf5
sub ecx, esi
lea eax, [ebp - 0x310]
push ecx
push eax
mov ecx, edx
call fcn.00403040
mov byte [ebp - 4], 0xd
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x5dc], esp
xorps xmm0, xmm0
lea eax, [ebp - 0x38]
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
cmp dword [ebp - 0x24], 0xf
mov edi, dword [ebp - 0x28]
cmova eax, dword [ebp - 0x38]
mov dword [ebp - 0x20], eax
cmp edi, 0x7fffffff
ja 0x49f068
cmp edi, 0xf
ja 0x49dd64
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 0xf
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
jmp 0x49ddba
mov eax, edi
or eax, 0xf
mov dword [ebp - 0x5e8], eax
cmp eax, 0x7fffffff
jbe 0x49dd7d
mov eax, closesocket
jmp 0x49dd92
cmp eax, 0x16
mov dword [ebp - 0x5e0], 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
push esi
call fcn.004032d0
mov ecx, dword [ebp - 0x68]
mov dword [esi + 0x14], ecx
lea ecx, [edi + 1]
push ecx
push dword [ebp - 0x20]
mov dword [esi], eax
push eax
mov dword [esi + 0x10], edi
call fcn.00435270
add esp, 0x14
mov byte [ebp - 4], 0xe
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x47c]
call fcn.004e64d0
add esp, 0x30
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x478]
mov ecx, dword [ebp - 0x47c]
sub eax, ecx
sar eax, 3
imul eax, eax, 0xaaaaaaab
test eax, eax
je 0x49de14
lea eax, [eax + eax*2]
lea eax, [eax - 3]
lea eax, [ecx + eax*8]
lea ecx, [ebp - 0x38]
cmp ecx, eax
je 0x49de14
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x49de0a
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.00416130
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x47c]
call fcn.004185d0
mov dword [ebp - 0x188], 0xadf485c9
lea edx, [ebp - 0x62c]
mov dword [ebp - 0x184], 0x8a2992b6
mov eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x184]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x190], 0x4c9fd92
mov dword [ebp - 0x18c], 0x78a935d0
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x18c]
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], ecx
mov dword [ebp - 0x198], 0xd92a1dce
mov dword [ebp - 0x194], 0xc0cfc619
mov eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x1a0], 0xae7946e8
mov dword [ebp - 0x19c], 0x89c15b7c
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [ebp - 0x19c]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], ecx
mov dword [ebp - 0x1a8], 0xdf9be395
mov dword [ebp - 0x1a4], 0xf940fadb
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0x1b0], 0x7dbb92e6
mov dword [ebp - 0x1ac], 0x14d846fe
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x57c], ecx
mov ecx, dword [ebp - 0x1ac]
mov dword [ebp - 0x1b8], 0xd94f69a7
mov dword [ebp - 0x1b4], 0xc0cfc619
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x574], ecx
mov ecx, dword [ebp - 0x1b4]
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x1c0], 0xae7946e8
mov dword [ebp - 0x56c], ecx
mov dword [ebp - 0x1bc], 0x89c15b7c
mov eax, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x1bc]
movaps xmm1, xmmword [ebp - 0x410]
xorps xmm1, xmmword [ebp - 0x580]
movaps xmmword [ebp - 0x410], xmm1
movaps xmm1, xmmword [ebp - 0x400]
mov dword [ebp - 0x568], eax
lea eax, [ebp - 0x410]
mov dword [ebp - 0x564], ecx
lea ecx, [ebp - 0x4a0]
xorps xmm1, xmmword [ebp - 0x570]
push eax
movaps xmmword [ebp - 0x400], xmm1
call fcn.0041ab20
add esp, 4
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x1c8], 0xdf9b81e7
mov dword [ebp - 0x1c4], 0xf940fadb
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x1c4]
mov dword [ebp - 0x390], eax
mov dword [ebp - 0x38c], ecx
mov dword [ebp - 0x1d0], 0x7dbb92e6
mov dword [ebp - 0x1cc], 0x14d846fe
mov eax, dword [ebp - 0x1d0]
mov ecx, dword [ebp - 0x1cc]
mov dword [ebp - 0x388], eax
mov dword [ebp - 0x384], ecx
mov dword [ebp - 0x1d8], 0xdf9be395
mov dword [ebp - 0x1d4], 0xf940fadb
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1d4]
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x1e0], 0x7dbb92e6
mov dword [ebp - 0x1dc], 0x14d846fe
mov eax, dword [ebp - 0x1e0]
mov ecx, dword [ebp - 0x1dc]
cmp dword [ebp - 0x48c], 0xf
movaps xmm1, xmmword [ebp - 0x390]
mov dword [ebp - 0x548], eax
lea eax, [ebp - 0x4a0]
cmova eax, dword [ebp - 0x4a0]
mov dword [ebp - 0x544], ecx
lea ecx, [ebp - 0x390]
xorps xmm1, xmmword [ebp - 0x550]
push ecx
push eax
movaps xmmword [ebp - 0x390], xmm1
call fcn.00439820
add esp, 8
test eax, eax
je 0x49ef01
push eax
call fcn.0043d0a8
add esp, 4
mov byte [ebp - 0x98], 0
lea ecx, [ebp - 0x90]
push 0
call fcn.00417ef0
mov byte [ebp - 4], 0x12
sub esp, 8
mov eax, esp
lea ecx, [ebp - 0xc8]
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.004140c0
add esp, 8
mov byte [ebp - 4], 0x13
mov al, byte [ebp - 0x98]
test al, al
jne 0x49e120
mov byte [ebp - 0x98], 1
call fcn.0041c3a0
mov dword [ebp - 0x90], eax
jmp 0x49e12e
cmp al, 1
jne 0x49efc0
mov eax, dword [ebp - 0x90]
lea ecx, [ebp - 0x38]
push ecx
mov ecx, eax
call fcn.004180a0
mov edi, eax
mov byte [ebp - 4], 0x16
mov dl, byte [edi]
mov cl, byte [ebp - 0xc8]
mov byte [edi], cl
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xbc]
mov byte [ebp - 0xc8], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xbc], esi
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xc0]
push dword [ebp - 0xc8]
call fcn.00417af0
cmp dword [ebp - 0x48c], 0xf
lea ecx, [ebp - 0x4a0]
lea edx, [ebp - 0x70]
cmova ecx, dword [ebp - 0x4a0]
call fcn.004d6790
test eax, eax
jne 0x49eca7
mov dword [ebp - 0x1e8], 0x9ad7a6c6
mov dword [ebp - 0x1e4], 0x9f60ae98
mov eax, dword [ebp - 0x1e8]
mov ecx, dword [ebp - 0x1e4]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x1f0], 0x19d7f78f
mov dword [ebp - 0x1ec], 0x71b52790
mov eax, dword [ebp - 0x1f0]
mov ecx, dword [ebp - 0x1ec]
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x1f8], 0xb839498b
mov dword [ebp - 0x1f4], 0xe0aab375
mov eax, dword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x1f4]
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x42c], ecx
mov dword [ebp - 0x200], 0xe33614ae
mov dword [ebp - 0x1fc], 0xf3ae365c
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x1fc]
mov dword [ebp - 0x428], eax
mov dword [ebp - 0x424], ecx
mov dword [ebp - 0x208], 0x974271b6
mov dword [ebp - 0x204], 0xdc4bada
mov eax, dword [ebp - 0x208]
mov ecx, dword [ebp - 0x204]
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x210], 0xacab55fe
mov dword [ebp - 0x20c], 0x19127bc1
mov eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x418], eax
mov dword [ebp - 0x414], ecx
mov dword [ebp - 0x218], 0xdf9be395
mov dword [ebp - 0x214], 0xf940fadb
mov eax, dword [ebp - 0x218]
mov ecx, dword [ebp - 0x214]
mov dword [ebp - 0x220], 0x7dbb92e6
mov dword [ebp - 0x21c], 0x14d846fe
mov dword [ebp - 0x5c0], eax
mov eax, dword [ebp - 0x220]
mov dword [ebp - 0x5bc], ecx
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x228], 0xd94f69a7
mov dword [ebp - 0x224], 0xc0cfc619
mov dword [ebp - 0x5b8], eax
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x5b4], ecx
mov ecx, dword [ebp - 0x224]
mov dword [ebp - 0x230], 0xae7946e8
mov dword [ebp - 0x22c], 0x89c15b7c
mov dword [ebp - 0x5b0], eax
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x5ac], ecx
mov ecx, dword [ebp - 0x22c]
mov dword [ebp - 0x238], 0xe52d17e9
mov dword [ebp - 0x234], 0x7eadd2b7
mov dword [ebp - 0x5a8], eax
mov eax, dword [ebp - 0x238]
mov dword [ebp - 0x5a4], ecx
mov ecx, dword [ebp - 0x234]
mov dword [ebp - 0x240], 0xd5d93a8a
mov dword [ebp - 0x5a0], eax
mov dword [ebp - 0x23c], 0x19127bfa
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x59c], ecx
mov ecx, dword [ebp - 0x23c]
movaps xmm1, xmmword [ebp - 0x5c0]
xorps xmm1, xmmword [ebp - 0x440]
movaps xmmword [ebp - 0x440], xmm1
movaps xmm1, xmmword [ebp - 0x5b0]
xorps xmm1, xmmword [ebp - 0x430]
mov dword [ebp - 0x598], eax
mov dword [ebp - 0x594], ecx
movaps xmmword [ebp - 0x430], xmm1
movaps xmm1, xmmword [ebp - 0x5a0]
xorps xmm1, xmmword [ebp - 0x420]
movaps xmmword [ebp - 0x420], xmm1
mov esi, dword [ebp - 0x70]
lea eax, [ebp - 0x6c]
push 0
push eax
push 0
push 1
push 0xffffffffffffffff
lea edx, [ebp - 0x440]
mov ecx, esi
call fcn.00510f30
add esp, 0x14
test eax, eax
jne 0x49eca0
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.0054b610
cmp eax, 0x64
jne 0x49ec99
xor edx, edx
mov ecx, edi
call fcn.0054ae20
mov esi, eax
mov edx, 1
mov ecx, edi
mov dword [ebp - 0xcc], esi
call fcn.0054ae20
mov edi, eax
mov dword [ebp - 0x40], edi
test esi, esi
je 0x49e71c
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49e464
sub ecx, edx
je 0x49e71c
mov dword [ebp - 0x248], 0xdfeb8aef
mov dword [ebp - 0x244], 0xf940fadb
mov eax, dword [ebp - 0x248]
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], ecx
mov dword [ebp - 0x250], 0x7dbb92e6
mov dword [ebp - 0x24c], 0x14d846fe
mov eax, dword [ebp - 0x250]
mov ecx, dword [ebp - 0x24c]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], ecx
mov dword [ebp - 0x258], 0xdf9be395
mov dword [ebp - 0x254], 0xf940fadb
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x254]
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x260], 0x7dbb92e6
mov dword [ebp - 0x25c], 0x14d846fe
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x55c], ecx
mov ecx, dword [ebp - 0x25c]
movaps xmm1, xmmword [ebp - 0x380]
mov dword [ebp - 0x558], eax
lea eax, [ebp - 0x380]
mov dword [ebp - 0x554], ecx
xorps xmm1, xmmword [ebp - 0x560]
push eax
push esi
movaps xmmword [ebp - 0x380], xmm1
call fcn.00434e60
add esp, 8
test eax, eax
jne 0x49e62d
mov dword [ebp - 0x268], 0xdfcbaacf
mov dword [ebp - 0x264], 0xf940fadb
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x370], eax
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x270], 0x7dbb92e6
mov dword [ebp - 0x26c], 0x14d846fe
mov eax, dword [ebp - 0x270]
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x368], eax
mov dword [ebp - 0x364], ecx
mov dword [ebp - 0x278], 0xdf9be395
mov dword [ebp - 0x274], 0xf940fadb
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x590], eax
mov dword [ebp - 0x280], 0x7dbb92e6
mov dword [ebp - 0x27c], 0x14d846fe
mov eax, dword [ebp - 0x280]
mov dword [ebp - 0x58c], ecx
mov ecx, dword [ebp - 0x27c]
movaps xmm1, xmmword [ebp - 0x370]
mov dword [ebp - 0x588], eax
lea eax, [ebp - 0x370]
mov dword [ebp - 0x584], ecx
xorps xmm1, xmmword [ebp - 0x590]
push eax
push esi
movaps xmmword [ebp - 0x370], xmm1
call fcn.00434e60
add esp, 8
test eax, eax
je 0x49e71c
mov byte [ebp - 4], 0x17
push 0x24
call fcn.00433672
mov esi, eax
add esp, 4
mov dword [ebp - 0x14], esi
mov byte [ebp - 4], 0x18
xorps xmm0, xmm0
movq qword [esi], xmm0
mov ecx, edi
mov dword [esi + 8], 0
mov dword [esi + 4], 1
mov dword [esi + 8], 1
mov dword [esi], vtable.std::_Ref_count_obj2_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___.0
lea eax, [ecx + 1]
movups xmmword [esi + 0xc], xmm0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x20], 0
mov dword [ebp - 0x20], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49e680
sub ecx, dword [ebp - 0x20]
push ecx
push edi
lea ecx, [esi + 0xc]
call fcn.00403040
mov byte [ebp - 4], 0x17
lea eax, [esi + 0xc]
mov edi, dword [ebp - 0x1c]
or edi, 0x20
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x589344]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x48], esi
cmp ecx, dword [0x589348]
je 0x49e6e0
mov dword [ecx + 4], esi
xor esi, esi
mov dword [ecx], eax
mov dword [ebp - 0x48], esi
add dword [0x589344], 8
mov dword [ebp - 0x4c], 0
jmp 0x49e6ed
lea eax, [ebp - 0x4c]
push eax
push ecx
call fcn.00423f40
mov esi, dword [ebp - 0x48]
and edi, 0xffffffdf
mov dword [ebp - 0x1c], edi
mov byte [ebp - 4], 0x12
test esi, esi
je 0x49e71c
or eax, 0xffffffff
lock xadd dword [esi + 4], eax
jne 0x49e71c
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
jne 0x49e71c
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
push 0
lea ecx, [ebp - 0x80]
mov byte [ebp - 0x88], 0
call fcn.00417ef0
mov byte [ebp - 4], 0x1a
xorps xmm0, xmm0
mov byte [ebp - 0xb8], 0
push 0x18
movq qword [ebp - 0xb0], xmm0
mov byte [ebp - 0xb8], 3
call fcn.00433672
mov esi, eax
add esp, 4
lea eax, [ebp - 0x39]
mov dword [ebp - 0x454], esi
mov dword [ebp - 0x458], eax
mov byte [ebp - 4], 0x1b
xorps xmm0, xmm0
mov edx, dword [ebp - 0xcc]
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49e788
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.00403040
mov dword [ebp - 0x454], 0
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0xb0], esi
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0x288], 0xbaf682fb
mov dword [ebp - 0x284], 0xf940fadb
mov eax, dword [ebp - 0x288]
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x320], eax
mov dword [ebp - 0x31c], ecx
mov dword [ebp - 0x290], 0x7dbb92e6
mov dword [ebp - 0x28c], 0x14d846fe
mov eax, dword [ebp - 0x290]
mov ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x314], ecx
mov dword [ebp - 0x298], 0xdf9be395
mov dword [ebp - 0x294], 0xf940fadb
mov eax, dword [ebp - 0x298]
mov ecx, dword [ebp - 0x294]
mov dword [ebp - 0x2a0], 0x7dbb92e6
mov dword [ebp - 0x4d0], eax
mov dword [ebp - 0x29c], 0x14d846fe
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x4cc], ecx
mov ecx, dword [ebp - 0x29c]
movaps xmm1, xmmword [ebp - 0x320]
mov dword [ebp - 0x4c8], eax
mov al, byte [ebp - 0x88]
mov dword [ebp - 0x4c4], ecx
xorps xmm1, xmmword [ebp - 0x4d0]
movaps xmmword [ebp - 0x320], xmm1
test al, al
jne 0x49e8a9
push 1
lea ecx, [ebp - 0x450]
mov byte [ebp - 0x88], 1
call fcn.00417ef0
mov eax, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x450]
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x7c], eax
jmp 0x49e8b4
cmp al, 1
jne 0x49f072
mov esi, dword [ebp - 0x80]
xorps xmm0, xmm0
mov dword [ebp - 0x3d8], 0
lea ecx, [ebp - 0x320]
mov dword [ebp - 0x3d4], 0
movups xmmword [ebp - 0x3e8], xmm0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49e8e0
sub ecx, edx
lea eax, [ebp - 0x320]
push ecx
push eax
lea ecx, [ebp - 0x3e8]
call fcn.00403040
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x3e8]
push eax
lea eax, [ebp - 0x674]
mov ecx, esi
push eax
call fcn.00426db0
mov edi, dword [eax]
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x3d4]
cmp ecx, 0xf
jbe 0x49e955
mov edx, dword [ebp - 0x3e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49e94b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49f06d
push ecx
push edx
call fcn.004338f3
add esp, 8
mov dword [ebp - 0x3d8], 0
mov dword [ebp - 0x3d4], 0xf
mov byte [ebp - 0x3e8], 0
mov byte [ebp - 4], 0x20
mov al, byte [edi + 0x28]
mov ecx, dword [ebp - 0xac]
mov byte [edi + 0x28], 3
mov edx, dword [edi + 0x30]
mov esi, dword [edi + 0x34]
mov byte [ebp - 0xb8], al
mov byte [ebp - 0xd0], al
mov eax, dword [ebp - 0xb0]
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], ecx
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], esi
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xb0]
push dword [ebp - 0xd0]
call fcn.00417af0
xorps xmm0, xmm0
mov byte [ebp - 0xa8], 0
push 0x18
movq qword [ebp - 0xa0], xmm0
mov byte [ebp - 0xa8], 3
call fcn.00433672
mov esi, eax
add esp, 4
lea eax, [ebp - 0x3a]
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], eax
mov byte [ebp - 4], 0x21
xorps xmm0, xmm0
mov edx, dword [ebp - 0x40]
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49ea14
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.00403040
mov dword [ebp - 0x45c], 0
mov byte [ebp - 4], 0x1a
mov dword [ebp - 0xa0], esi
mov byte [ebp - 4], 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x2a8], 0xaaf782e3
mov dword [ebp - 0x2a4], 0xf940fabe
mov eax, dword [ebp - 0x2a8]
mov ecx, dword [ebp - 0x2a4]
mov dword [ebp - 0x32c], ecx
mov dword [ebp - 0x330], eax
mov dword [ebp - 0x2b0], 0x7dbb92e6
mov dword [ebp - 0x2ac], 0x14d846fe
mov eax, dword [ebp - 0x2b0]
mov ecx, dword [ebp - 0x2ac]
mov dword [ebp - 0x324], ecx
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x2b8], 0xdf9be395
mov dword [ebp - 0x2b4], 0xf940fadb
mov eax, dword [ebp - 0x2b8]
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2c0], 0x7dbb92e6
mov dword [ebp - 0x530], eax
mov dword [ebp - 0x52c], ecx
mov dword [ebp - 0x2bc], 0x14d846fe
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [ebp - 0x2bc]
movaps xmm1, xmmword [ebp - 0x330]
mov dword [ebp - 0x524], ecx
lea ecx, [ebp - 0x330]
mov dword [ebp - 0x528], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x530]
movaps xmmword [ebp - 0x330], xmm1
movups xmmword [ebp - 0x3d0], xmm0
mov dword [ebp - 0x3c0], 0
mov dword [ebp - 0x3bc], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49eb30
sub ecx, edx
lea eax, [ebp - 0x330]
push ecx
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00403040
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x3d0]
mov ecx, dword [ebp - 0x80]
push eax
lea eax, [ebp - 0x66c]
push eax
call fcn.00426db0
mov edi, dword [eax]
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x3bc]
cmp ecx, 0xf
jbe 0x49eba6
mov edx, dword [ebp - 0x3d0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49eb9c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49f06d
push ecx
push edx
call fcn.004338f3
add esp, 8
mov dword [ebp - 0x3c0], 0
mov dword [ebp - 0x3bc], 0xf
mov byte [ebp - 0x3d0], 0
mov byte [ebp - 4], 0x26
mov al, byte [edi + 0x28]
mov ecx, dword [ebp - 0x9c]
mov byte [edi + 0x28], 3
mov edx, dword [edi + 0x30]
mov esi, dword [edi + 0x34]
mov byte [ebp - 0xa8], al
mov byte [ebp - 0x44], al
mov eax, dword [ebp - 0xa0]
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], ecx
mov dword [ebp - 0xa0], edx
mov dword [ebp - 0x9c], esi
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xa0]
push dword [ebp - 0x44]
call fcn.00417af0
mov ecx, dword [ebp - 0x90]
lea eax, [ebp - 0x38]
push eax
call fcn.004180a0
mov esi, eax
mov al, byte [esi]
test al, al
je 0x49ec2c
cmp al, 2
jne 0x49f014
jmp 0x49ec4e
push 2
lea ecx, [ebp - 0x468]
mov byte [esi], 2
call fcn.00417ef0
mov eax, dword [ebp - 0x468]
mov ecx, dword [ebp - 0x464]
mov dword [esi + 8], eax
mov dword [esi + 0xc], ecx
mov esi, dword [esi + 8]
lea ecx, [ebp - 0x88]
push ecx
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x49ec6d
mov ecx, eax
call fcn.00413d50
add dword [esi + 4], 0x10
jmp 0x49ec75
push eax
mov ecx, esi
call fcn.00424900
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x80]
push 1
call fcn.00417af0
mov edi, dword [ebp - 0x6c]
mov ecx, edi
call fcn.0054b610
cmp eax, 0x64
je 0x49e435
mov esi, dword [ebp - 0x70]
mov ecx, edi
call fcn.0054af50
mov ecx, esi
call fcn.004d65f0
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x2c8], 0xb0ef96f4
mov dword [ebp - 0x2c4], 0x952c93bd
mov eax, dword [ebp - 0x2c8]
mov ecx, dword [ebp - 0x2c4]
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0x2d0], 0x7dbb92e6
mov dword [ebp - 0x2cc], 0x14d846fe
mov eax, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2cc]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0x2d8], 0xdf9be395
mov dword [ebp - 0x2d4], 0xf940fadb
mov eax, dword [ebp - 0x2d8]
mov ecx, dword [ebp - 0x2d4]
mov dword [ebp - 0x58], 0x7dbb92e6
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x54], 0x14d846fe
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x53c], ecx
mov ecx, dword [ebp - 0x54]
cmp byte [edi], 0
movaps xmm1, xmmword [ebp - 0xe0]
mov dword [ebp - 0x538], eax
mov dword [ebp - 0x534], ecx
xorps xmm1, xmmword [ebp - 0x540]
movaps xmmword [ebp - 0xe0], xmm1
jne 0x49ed8e
push 1
lea ecx, [ebp - 0x470]
mov byte [edi], 1
call fcn.00417ef0
mov eax, dword [ebp - 0x470]
lea edx, [edi + 8]
mov ecx, dword [ebp - 0x46c]
mov dword [edx], eax
mov dword [edx + 4], ecx
jmp 0x49ed91
lea edx, [edi + 8]
cmp byte [edi], 1
jne 0x49ef86
mov esi, dword [edx]
lea ecx, [ebp - 0xe0]
xorps xmm0, xmm0
mov dword [ebp - 0x3a8], 0
movups xmmword [ebp - 0x3b8], xmm0
mov dword [ebp - 0x3a4], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x49edc3
sub ecx, edx
lea eax, [ebp - 0xe0]
push ecx
push eax
lea ecx, [ebp - 0x3b8]
call fcn.00403040
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x664]
mov ecx, esi
push eax
call fcn.00426db0
mov esi, dword [eax]
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x3a4]
cmp ecx, 0xf
jbe 0x49ee38
mov edx, dword [ebp - 0x3b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49ee2e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x49f06d
push ecx
push edx
call fcn.004338f3
add esp, 8
mov dword [ebp - 0x3a8], 0
mov dword [ebp - 0x3a4], 0xf
mov byte [ebp - 0x3b8], 0
mov al, byte [esi + 0x28]
test al, al
je 0x49ee93
cmp al, 2
je 0x49eeb6
lea ecx, [esi + 0x28]
call fcn.004181e0
push eax
lea ecx, [ebp - 0x65c]
call fcn.00402cf0
mov byte [ebp - 4], 0x2e
mov edx, str.cannot_use_push_back___with
push eax
lea ecx, [ebp - 0x644]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x2f
jmp 0x49f043
push 2
lea ecx, [ebp - 0x448]
mov byte [esi + 0x28], 2
call fcn.00417ef0
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x444]
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], ecx
mov esi, dword [esi + 0x30]
lea ecx, [ebp - 0x98]
push ecx
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x49eee6
mov ecx, eax
call fcn.00413d50
add dword [esi + 4], 0x10
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x90]
push 1
call fcn.00417af0
jmp 0x49ef04
push eax
mov ecx, esi
call fcn.00424900
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x90]
push 1
call fcn.00417af0
jmp 0x49ef04
mov edi, dword [ebp - 0x74]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x4a0]
call fcn.00402df0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x38]
call fcn.00402df0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x62c]
call fcn.00402df0
mov esi, dword [ebp - 0x78]
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc esi
add esi, eax
mov dword [ebp - 0x78], esi
cmp byte [esi], 0
jne 0x49d601
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4b8]
call fcn.00402df0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5d8]
call fcn.00402df0
mov byte [ebp - 4], 0
lea ecx, [ebx + 8]
call fcn.00402df0
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, edi
call fcn.004181e0
push eax
lea ecx, [ebp - 0x65c]
call fcn.00402cf0
mov byte [ebp - 4], 0x2c
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x644]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x2d
mov edx, 0x131
push eax
jmp 0x49f049
lea ecx, [ebp - 0x98]
call fcn.004181e0
push eax
lea ecx, [ebp - 0x70c]
call fcn.00402cf0
mov byte [ebp - 4], 0x14
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x724]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x15
mov edx, 0x131
push eax
lea ecx, [ebp - 0x6c4]
call fcn.00407cf0
add esp, 4
lea eax, [ebp - 0x6c4]
push 0x57a6e0
jmp 0x49f062
mov ecx, esi
call fcn.004181e0
push eax
lea ecx, [ebp - 0x644]
call fcn.00402cf0
mov byte [ebp - 4], 0x29
mov edx, str.cannot_use_push_back___with
push eax
lea ecx, [ebp - 0x65c]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x2a
push eax
mov edx, 0x134
lea ecx, [ebp - 0x614]
call fcn.00407cf0
add esp, 4
lea eax, [ebp - 0x614]
push 0x57a6e0
push eax
call fcn.004351fb
call fcn.00402c60
call fcn.00438c70
lea ecx, [ebp - 0x88]
call fcn.004181e0
push eax
lea ecx, [ebp - 0x6dc]
call fcn.00402cf0
mov byte [ebp - 4], 0x1e
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x6f4]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x1f
mov edx, 0x131
push eax
lea ecx, [ebp - 0x6a8]
call fcn.00407cf0
add esp, 4
lea eax, [ebp - 0x6a8]
push 0x57a6e0
push eax
call fcn.004351fb
int3