Function at 0x493ed0
Capabilities:
Contain obfuscated stackstrings
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 0x5526bc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x1aa8
push ebx
call fcn.00434710
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 - 0x48], 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], 0xddf3bdc5
mov dword [ebp - 0x14], 0xf3b96cbe
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x18], 0x61453c76
mov dword [ebp - 0x14], 0xa0df89f8
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x464], ecx
mov dword [ebp - 0x18], 0xa980d4ad
mov dword [ebp - 0x14], 0xf3c01ed1
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x18], 0x61453c76
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x14], 0xa0df89f8
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
movaps xmm1, xmmword [ebp - 0x470]
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x470]
mov dword [ebp - 0x54], ecx
mov ecx, edi
xorps xmm1, xmmword [ebp - 0x60]
push eax
movaps xmmword [ebp - 0x470], xmm1
call fcn.0041af80
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.00413cb0
push 0x104
lea eax, [ebp - 0xab0]
push 0
push eax
call fcn.004359a0
add esp, 0xc
lea eax, [ebp - 0xab0]
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 - 0xab0]
lea ecx, [ebp - 0x7d0]
call fcn.0041ac50
add esp, 4
mov byte [ebp - 4], 4
lea edx, [ebp - 0x7d0]
mov dword [ebp - 0x18], 0xc6f2a4f1
mov dword [ebp - 0x14], 0x96ac77b7
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x18], 0xf2c1205
mov dword [ebp - 0x14], 0xa0df8991
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x478], eax
mov dword [ebp - 0x474], ecx
mov dword [ebp - 0x18], 0xa980d4ad
mov dword [ebp - 0x14], 0xf3c01ed1
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x18], 0x61453c76
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x14], 0xa0df89f8
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
movaps xmm1, xmmword [ebp - 0x480]
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x480]
mov dword [ebp - 0x54], ecx
lea ecx, [ebp - 0x628]
xorps xmm1, xmmword [ebp - 0x60]
push eax
movaps xmmword [ebp - 0x480], xmm1
call fcn.0041ab20
add esp, 4
mov byte [ebp - 4], 5
lea eax, [ebp - 0x1ab0]
push 0x1000
push 0
push eax
call fcn.004359a0
add esp, 0xc
lea eax, [ebp - 0x628]
cmp dword [ebp - 0x614], 0xf
cmova eax, dword [ebp - 0x628]
push eax
push 0x1000
lea eax, [ebp - 0x1ab0]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionNamesA]
lea esi, [ebp - 0x1ab0]
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x3a8], 0xcfefa6fd
mov dword [ebp - 0x3a4], 0xf3a572b8
mov eax, dword [ebp - 0x3a8]
mov ecx, dword [ebp - 0x3a4]
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x3b0], 0x61453c76
mov dword [ebp - 0x3ac], 0xa0df89f8
mov eax, dword [ebp - 0x3b0]
mov ecx, dword [ebp - 0x3ac]
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x484], ecx
mov dword [ebp - 0x418], 0xa980d4ad
mov dword [ebp - 0x414], 0xf3c01ed1
mov eax, dword [ebp - 0x418]
mov ecx, dword [ebp - 0x414]
mov dword [ebp - 0x6a0], eax
mov dword [ebp - 0x420], 0x61453c76
mov dword [ebp - 0x41c], 0xa0df89f8
mov eax, dword [ebp - 0x420]
mov dword [ebp - 0x69c], ecx
mov ecx, dword [ebp - 0x41c]
movaps xmm1, xmmword [ebp - 0x490]
mov dword [ebp - 0x698], eax
lea eax, [ebp - 0x490]
push 7
mov dword [ebp - 0x694], ecx
xorps xmm1, xmmword [ebp - 0x6a0]
push eax
push esi
movaps xmmword [ebp - 0x490], xmm1
call fcn.00440f9e
add esp, 0xc
test eax, eax
jne 0x49606e
push 0x104
push eax
lea eax, [ebp - 0x9a8]
push eax
call fcn.004359a0
add esp, 0xc
lea edx, [ebp - 0x628]
cmp dword [ebp - 0x614], 0xf
cmova edx, dword [ebp - 0x628]
mov dword [ebp - 0xe8], 0xc1f4b5fd
mov dword [ebp - 0xe4], 0xf3c01ed1
mov eax, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0xe4]
mov dword [ebp - 0x450], eax
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0xf0], 0x61453c76
mov dword [ebp - 0xec], 0xa0df89f8
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xec]
mov dword [ebp - 0x448], eax
mov dword [ebp - 0x444], ecx
mov dword [ebp - 0xf8], 0xa980d4ad
mov dword [ebp - 0xf4], 0xf3c01ed1
mov eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0xf4]
mov dword [ebp - 0x6b0], eax
push edx
mov dword [ebp - 0x100], 0x61453c76
mov dword [ebp - 0xfc], 0xa0df89f8
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x6a8], eax
lea eax, [ebp - 0x9a8]
push 0x104
push eax
mov dword [ebp - 0x6ac], ecx
lea eax, [ebp - 0x450]
mov ecx, dword [ebp - 0xfc]
movaps xmm1, xmmword [ebp - 0x450]
push 0
mov dword [ebp - 0x6a4], ecx
xorps xmm1, xmmword [ebp - 0x6b0]
push eax
push esi
movaps xmmword [ebp - 0x450], xmm1
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x108], 0xa980d4f1
mov dword [ebp - 0x104], 0xf3c01ed1
mov eax, dword [ebp - 0x108]
mov ecx, dword [ebp - 0x104]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x110], 0x61453c76
mov dword [ebp - 0x10c], 0xa0df89f8
mov eax, dword [ebp - 0x110]
mov ecx, dword [ebp - 0x10c]
mov dword [ebp - 0x3b8], eax
mov dword [ebp - 0x3b4], ecx
mov dword [ebp - 0x118], 0xa980d4ad
mov dword [ebp - 0x114], 0xf3c01ed1
mov eax, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x120], 0x61453c76
mov dword [ebp - 0x6c0], eax
mov dword [ebp - 0x11c], 0xa0df89f8
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x6bc], ecx
mov ecx, dword [ebp - 0x11c]
movaps xmm1, xmmword [ebp - 0x3c0]
mov dword [ebp - 0x6b8], eax
mov dword [ebp - 0x6b4], ecx
xorps xmm1, xmmword [ebp - 0x6c0]
movaps xmmword [ebp - 0x3c0], xmm1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x3c0]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4943f0
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x7c0]
sub eax, edx
cmp eax, ecx
jb 0x49616b
cmp dword [ebp - 0x7bc], 0xf
lea eax, [ebp - 0x7d0]
push ecx
cmova eax, dword [ebp - 0x7d0]
lea ecx, [ebp - 0x3c0]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x48]
lea ecx, [ebp - 0x848]
call fcn.0041e8a0
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x9a8]
or esi, 8
lea edx, [ebp - 0x848]
push eax
lea ecx, [ebp - 0x7b8]
mov dword [ebp - 0x1c], esi
call fcn.0041abb0
add esp, 4
mov byte [ebp - 4], 7
and esi, 0xfffffff7
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x848]
call fcn.00402df0
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
lea ecx, [ebp - 0x9a8]
mov dword [ebp - 0x24], 0
movups xmmword [ebp - 0x38], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x494496
sub ecx, edx
lea eax, [ebp - 0x9a8]
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 0x4946f6
push esi
push 0x2f
push edi
call fcn.00437190
add esp, 0xc
test eax, eax
je 0x4946f6
sub eax, edi
cmp eax, 0xffffffff
je 0x4946f6
mov dword [ebp - 0x128], 0xa980d482
sub esp, 0x18
mov dword [ebp - 0x124], 0xf3c01ed1
mov edx, esp
mov eax, dword [ebp - 0x128]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x124]
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x130], 0x61453c76
mov dword [ebp - 0x12c], 0xa0df89f8
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x3c4], ecx
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x138], 0xa980d4ad
mov dword [ebp - 0x134], 0xf3c01ed1
mov eax, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0x140], 0x61453c76
mov dword [ebp - 0x6d0], eax
mov dword [ebp - 0x6cc], ecx
mov dword [ebp - 0x13c], 0xa0df89f8
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x13c]
movaps xmm1, xmmword [ebp - 0x3d0]
mov dword [ebp - 0x6c4], ecx
lea ecx, [ebp - 0x3d0]
mov dword [ebp - 0x6c8], eax
lea esi, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x6d0]
movups xmmword [edx], xmm0
mov dword [ebp - 0x7d4], esp
movaps xmmword [ebp - 0x3d0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4945d5
sub ecx, esi
lea eax, [ebp - 0x3d0]
push ecx
push eax
mov ecx, edx
call fcn.00403040
mov byte [ebp - 4], 0xa
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x7dc], 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 0x49616b
cmp edi, 0xf
ja 0x494644
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 0xf
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
jmp 0x49468a
mov eax, edi
or eax, 0xf
cmp eax, 0x7fffffff
jbe 0x494657
mov eax, closesocket
jmp 0x494662
cmp eax, 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.00435260
add esp, 0x14
mov byte [ebp - 4], 0xb
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x5ec]
call fcn.004e3880
add esp, 0x30
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x5e8]
mov ecx, dword [ebp - 0x5ec]
sub eax, ecx
sar eax, 3
imul eax, eax, 0xaaaaaaab
test eax, eax
je 0x4946e4
lea eax, [eax + eax*2]
lea eax, [eax - 3]
lea eax, [ecx + eax*8]
lea ecx, [ebp - 0x38]
cmp ecx, eax
je 0x4946e4
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x4946da
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.00416130
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x5ec]
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 0x494930
push esi
push 0x5c
push edi
call fcn.00437190
add esp, 0xc
test eax, eax
je 0x494930
sub eax, edi
cmp eax, 0xffffffff
je 0x494930
mov dword [ebp - 0x148], 0xa980d4f1
sub esp, 0x18
mov dword [ebp - 0x144], 0xf3c01ed1
mov edx, esp
mov eax, dword [ebp - 0x148]
xorps xmm0, xmm0
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0x3dc], ecx
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x150], 0x61453c76
mov dword [ebp - 0x14c], 0xa0df89f8
mov eax, dword [ebp - 0x150]
mov ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x3d4], ecx
mov dword [ebp - 0x3d8], eax
mov dword [ebp - 0x158], 0xa980d4ad
mov dword [ebp - 0x154], 0xf3c01ed1
mov eax, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x160], 0x61453c76
mov dword [ebp - 0x710], eax
mov dword [ebp - 0x70c], ecx
mov dword [ebp - 0x15c], 0xa0df89f8
mov eax, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x15c]
movaps xmm1, xmmword [ebp - 0x3e0]
mov dword [ebp - 0x704], ecx
lea ecx, [ebp - 0x3e0]
mov dword [ebp - 0x708], eax
lea esi, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x710]
movups xmmword [edx], xmm0
mov dword [ebp - 0x7d8], esp
movaps xmmword [ebp - 0x3e0], xmm1
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x494815
sub ecx, esi
lea eax, [ebp - 0x3e0]
push ecx
push eax
mov ecx, edx
call fcn.00403040
mov byte [ebp - 4], 0xd
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x14], 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 0x49616b
cmp edi, 0xf
ja 0x494881
mov dword [esi + 0x10], edi
mov dword [esi + 0x14], 0xf
movups xmm0, xmmword [eax]
movups xmmword [esi], xmm0
jmp 0x4948c7
mov eax, edi
or eax, 0xf
cmp eax, 0x7fffffff
jbe 0x494894
mov eax, closesocket
jmp 0x49489f
cmp eax, 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.00435260
add esp, 0x14
mov byte [ebp - 4], 0xe
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x5f8]
call fcn.004e3880
add esp, 0x30
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x5f4]
mov ecx, dword [ebp - 0x5f8]
sub eax, ecx
sar eax, 3
imul eax, eax, 0xaaaaaaab
test eax, eax
je 0x494921
lea eax, [eax + eax*2]
lea eax, [eax - 3]
lea eax, [ecx + eax*8]
lea ecx, [ebp - 0x38]
cmp ecx, eax
je 0x494921
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x494917
mov eax, dword [eax]
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.00416130
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x5f8]
call fcn.004185d0
mov dword [ebp - 0x168], 0xc8eca4f1
lea edx, [ebp - 0x7b8]
mov dword [ebp - 0x164], 0xddb37bb2
mov eax, dword [ebp - 0x168]
mov ecx, dword [ebp - 0x164]
mov dword [ebp - 0x4b0], eax
mov dword [ebp - 0x4ac], ecx
mov dword [ebp - 0x170], 0x8294d05
mov dword [ebp - 0x16c], 0xa0dfec8c
mov eax, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x4a8], eax
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x178], 0xa980d4ad
mov dword [ebp - 0x174], 0xf3c01ed1
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x174]
mov dword [ebp - 0x640], eax
mov dword [ebp - 0x180], 0x61453c76
mov dword [ebp - 0x63c], ecx
mov dword [ebp - 0x17c], 0xa0df89f8
mov eax, dword [ebp - 0x180]
mov ecx, dword [ebp - 0x17c]
movaps xmm1, xmmword [ebp - 0x4b0]
mov dword [ebp - 0x638], eax
lea eax, [ebp - 0x4b0]
mov dword [ebp - 0x634], ecx
lea ecx, [ebp - 0x610]
xorps xmm1, xmmword [ebp - 0x640]
push eax
movaps xmmword [ebp - 0x4b0], xmm1
call fcn.0041ab20
add esp, 4
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x188], 0xa980b6df
mov dword [ebp - 0x184], 0xf3c01ed1
mov eax, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x184]
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x45c], ecx
mov dword [ebp - 0x190], 0x61453c76
mov dword [ebp - 0x18c], 0xa0df89f8
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0x18c]
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x198], 0xa980d4ad
mov dword [ebp - 0x194], 0xf3c01ed1
mov eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x650], eax
mov dword [ebp - 0x1a0], 0x61453c76
mov dword [ebp - 0x64c], ecx
mov dword [ebp - 0x19c], 0xa0df89f8
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [ebp - 0x19c]
cmp dword [ebp - 0x5fc], 0xf
movaps xmm1, xmmword [ebp - 0x460]
mov dword [ebp - 0x648], eax
lea eax, [ebp - 0x610]
cmova eax, dword [ebp - 0x610]
mov dword [ebp - 0x644], ecx
lea ecx, [ebp - 0x460]
xorps xmm1, xmmword [ebp - 0x650]
push ecx
push eax
movaps xmmword [ebp - 0x460], xmm1
call fcn.00439810
add esp, 8
test eax, eax
je 0x495fb6
push eax
call fcn.0043d098
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 - 0xb8]
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 0x494b68
mov byte [ebp - 0x98], 1
call fcn.0041c3a0
mov dword [ebp - 0x90], eax
jmp 0x494b76
cmp al, 1
jne 0x4960c3
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 - 0xb8]
mov byte [edi], cl
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xac]
mov byte [ebp - 0xb8], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xac], esi
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xb0]
push dword [ebp - 0xb8]
call fcn.00417af0
cmp dword [ebp - 0x5fc], 0xf
lea ecx, [ebp - 0x610]
lea edx, [ebp - 0x40]
cmova ecx, dword [ebp - 0x610]
call fcn.004d3b40
test eax, eax
jne 0x495e3f
mov dword [ebp - 0x1a8], 0xeccc91fe
mov dword [ebp - 0x1a4], 0x83e04a92
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], ecx
mov dword [ebp - 0x1b0], 0x4265d1a
mov dword [ebp - 0x1ac], 0x8cbbe0a7
mov eax, dword [ebp - 0x1b0]
mov ecx, dword [ebp - 0x1ac]
mov dword [ebp - 0x5b8], eax
mov dword [ebp - 0x5b4], ecx
mov dword [ebp - 0x1b8], 0xeaae4ec7
mov dword [ebp - 0x1b4], 0x7fd59006
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [ebp - 0x1b4]
mov dword [ebp - 0x5b0], eax
mov dword [ebp - 0x5ac], ecx
mov dword [ebp - 0x1c0], 0x3bd07b9
mov dword [ebp - 0x1bc], 0xe2bcd4a0
mov eax, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x1bc]
mov dword [ebp - 0x5a8], eax
mov dword [ebp - 0x5a4], ecx
mov dword [ebp - 0x1c8], 0xfa61a149
mov dword [ebp - 0x1c4], 0xf4afff30
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x1c4]
mov dword [ebp - 0x5a0], eax
mov dword [ebp - 0x59c], ecx
mov dword [ebp - 0x1d0], 0x4e16b2da
mov dword [ebp - 0x1cc], 0x6404d9f9
mov eax, dword [ebp - 0x1d0]
mov ecx, dword [ebp - 0x1cc]
mov dword [ebp - 0x598], eax
mov dword [ebp - 0x594], ecx
mov dword [ebp - 0x1d8], 0x15a94887
mov dword [ebp - 0x1d4], 0x673bd9a0
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1d4]
mov dword [ebp - 0x590], eax
mov dword [ebp - 0x58c], ecx
mov dword [ebp - 0x1e0], 0x67d35288
mov dword [ebp - 0x1dc], 0xaeb3af96
mov eax, dword [ebp - 0x1e0]
mov ecx, dword [ebp - 0x1dc]
mov dword [ebp - 0x588], eax
mov dword [ebp - 0x584], ecx
mov dword [ebp - 0x1e8], 0xc92cea75
mov dword [ebp - 0x1e4], 0xf5d45aa4
mov eax, dword [ebp - 0x1e8]
mov ecx, dword [ebp - 0x1e4]
mov dword [ebp - 0x580], eax
mov dword [ebp - 0x57c], ecx
mov dword [ebp - 0x1f0], 0x53ae5244
mov dword [ebp - 0x1ec], 0xb9862223
mov eax, dword [ebp - 0x1f0]
mov ecx, dword [ebp - 0x1ec]
mov dword [ebp - 0x578], eax
mov dword [ebp - 0x574], ecx
mov dword [ebp - 0x1f8], 0xce3e9c56
mov dword [ebp - 0x1f4], 0xd725856e
mov eax, dword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x1f4]
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], ecx
mov dword [ebp - 0x200], 0xf42ad36f
mov dword [ebp - 0x1fc], 0x1550cbec
mov eax, dword [ebp - 0x200]
mov ecx, dword [ebp - 0x1fc]
mov dword [ebp - 0x568], eax
mov dword [ebp - 0x564], ecx
mov dword [ebp - 0x208], 0x1ad5c229
mov dword [ebp - 0x204], 0xacde24e9
mov eax, dword [ebp - 0x208]
mov ecx, dword [ebp - 0x204]
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x55c], ecx
mov dword [ebp - 0x210], 0x9ea3c552
mov dword [ebp - 0x20c], 0x1b9ca09d
mov eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x558], eax
mov dword [ebp - 0x554], ecx
mov dword [ebp - 0x218], 0xb0b6df46
mov dword [ebp - 0x214], 0xb576108b
mov eax, dword [ebp - 0x218]
mov ecx, dword [ebp - 0x214]
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x220], 0x74f71c71
mov dword [ebp - 0x21c], 0x6e1ed42b
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
mov dword [ebp - 0x548], eax
mov dword [ebp - 0x544], ecx
mov dword [ebp - 0x228], 0x3f99589d
mov dword [ebp - 0x224], 0xa606fc01
mov eax, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x224]
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x53c], ecx
mov dword [ebp - 0x230], 0x71503106
mov dword [ebp - 0x22c], 0xd178c628
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x22c]
mov dword [ebp - 0x538], eax
mov dword [ebp - 0x534], ecx
mov dword [ebp - 0x238], 0xa980d4ad
mov dword [ebp - 0x234], 0xf3c01ed1
mov eax, dword [ebp - 0x238]
mov ecx, dword [ebp - 0x234]
mov dword [ebp - 0x240], 0x61453c76
mov dword [ebp - 0x23c], 0xa0df89f8
mov dword [ebp - 0x7a0], eax
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x79c], ecx
mov ecx, dword [ebp - 0x23c]
mov dword [ebp - 0x248], 0x99c738e7
mov dword [ebp - 0x244], 0x1b8ae46f
mov dword [ebp - 0x798], eax
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x794], ecx
mov ecx, dword [ebp - 0x244]
mov dword [ebp - 0x250], 0x23d873d8
mov dword [ebp - 0x24c], 0xaff386e6
mov dword [ebp - 0x790], eax
mov eax, dword [ebp - 0x250]
mov dword [ebp - 0x78c], ecx
mov ecx, dword [ebp - 0x24c]
mov dword [ebp - 0x258], 0xb624f261
mov dword [ebp - 0x254], 0xd4fbbc75
mov dword [ebp - 0x788], eax
mov eax, dword [ebp - 0x258]
mov dword [ebp - 0x784], ecx
mov ecx, dword [ebp - 0x254]
mov dword [ebp - 0x260], 0x2d77deaa
mov dword [ebp - 0x25c], 0x6d869c
mov dword [ebp - 0x780], eax
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x77c], ecx
mov ecx, dword [ebp - 0x25c]
mov dword [ebp - 0x268], 0x7cdf68ab
mov dword [ebp - 0x264], 0x384fb0d3
mov dword [ebp - 0x778], eax
mov eax, dword [ebp - 0x268]
mov dword [ebp - 0x774], ecx
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x270], 0x2a733ec
mov dword [ebp - 0x26c], 0xcada8fba
mov dword [ebp - 0x770], eax
mov eax, dword [ebp - 0x270]
mov dword [ebp - 0x76c], ecx
mov ecx, dword [ebp - 0x26c]
mov dword [ebp - 0x278], 0x867eac55
mov dword [ebp - 0x274], 0x9ab97ae9
mov dword [ebp - 0x768], eax
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x764], ecx
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x760], eax
mov dword [ebp - 0x75c], ecx
mov dword [ebp - 0x280], 0x3ac60d3e
mov dword [ebp - 0x27c], 0xcbe95650
mov eax, dword [ebp - 0x280]
mov ecx, dword [ebp - 0x27c]
mov dword [ebp - 0x288], 0xbd57ea2f
mov dword [ebp - 0x284], 0xf756f107
mov dword [ebp - 0x758], eax
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x754], ecx
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x290], 0xb16e8120
mov dword [ebp - 0x28c], 0x4c12ebbe
mov dword [ebp - 0x750], eax
mov eax, dword [ebp - 0x290]
mov dword [ebp - 0x74c], ecx
mov ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x298], 0x3ab1ab09
mov dword [ebp - 0x294], 0xef8d61ad
mov dword [ebp - 0x748], eax
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x744], ecx
mov ecx, dword [ebp - 0x294]
mov dword [ebp - 0x2a0], 0xd3ea8972
mov dword [ebp - 0x29c], 0x29bcf4d4
mov dword [ebp - 0x740], eax
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x73c], ecx
mov ecx, dword [ebp - 0x29c]
mov dword [ebp - 0x2a8], 0x9986ef73
mov dword [ebp - 0x2a4], 0xf1245fab
mov dword [ebp - 0x738], eax
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x734], ecx
mov ecx, dword [ebp - 0x2a4]
mov dword [ebp - 0x2b0], 0x36d74e34
mov dword [ebp - 0x2ac], 0xa77f472
mov dword [ebp - 0x730], eax
mov eax, dword [ebp - 0x2b0]
mov dword [ebp - 0x72c], ecx
mov ecx, dword [ebp - 0x2ac]
mov dword [ebp - 0x2b8], 0x7cca19bd
mov dword [ebp - 0x2b4], 0xa606fc01
mov dword [ebp - 0x728], eax
mov eax, dword [ebp - 0x2b8]
mov dword [ebp - 0x724], ecx
mov ecx, dword [ebp - 0x2b4]
mov dword [ebp - 0x2c0], 0x71503106
mov dword [ebp - 0x720], eax
mov dword [ebp - 0x2bc], 0xd178c628
mov eax, dword [ebp - 0x2c0]
mov dword [ebp - 0x71c], ecx
mov ecx, dword [ebp - 0x2bc]
movaps xmm1, xmmword [ebp - 0x7a0]
xorps xmm1, xmmword [ebp - 0x5c0]
movaps xmmword [ebp - 0x5c0], xmm1
movaps xmm1, xmmword [ebp - 0x790]
xorps xmm1, xmmword [ebp - 0x5b0]
movaps xmmword [ebp - 0x5b0], xmm1
movaps xmm1, xmmword [ebp - 0x5a0]
xorps xmm1, xmmword [ebp - 0x780]
movaps xmmword [ebp - 0x5a0], xmm1
movaps xmm1, xmmword [ebp - 0x590]
xorps xmm1, xmmword [ebp - 0x770]
movaps xmmword [ebp - 0x590], xmm1
movaps xmm1, xmmword [ebp - 0x580]
xorps xmm1, xmmword [ebp - 0x760]
movaps xmmword [ebp - 0x580], xmm1
movaps xmm1, xmmword [ebp - 0x570]
xorps xmm1, xmmword [ebp - 0x750]
movaps xmmword [ebp - 0x570], xmm1
movaps xmm1, xmmword [ebp - 0x560]
xorps xmm1, xmmword [ebp - 0x740]
movaps xmmword [ebp - 0x560], xmm1
movaps xmm1, xmmword [ebp - 0x550]
xorps xmm1, xmmword [ebp - 0x730]
movaps xmmword [ebp - 0x550], xmm1
movaps xmm1, xmmword [ebp - 0x540]
mov dword [ebp - 0x718], eax
mov dword [ebp - 0x714], ecx
xorps xmm1, xmmword [ebp - 0x720]
movaps xmmword [ebp - 0x540], xmm1
mov ecx, dword [ebp - 0x40]
lea eax, [ebp - 0x70]
push 0
push eax
push 0
push 1
push 0xffffffffffffffff
lea edx, [ebp - 0x5c0]
call fcn.0050e2b0
add esp, 0x14
test eax, eax
jne 0x495e37
mov esi, dword [ebp - 0x70]
mov ecx, esi
call fcn.00548990
cmp eax, 0x64
jne 0x495e30
nop dword [eax]
xor edx, edx
mov ecx, esi
call fcn.005481a0
mov edx, 1
mov ecx, esi
mov edi, eax
call fcn.005481a0
mov dword [ebp - 0x2c8], 0xa980d484
xorps xmm0, xmm0
mov dword [ebp - 0x2c4], 0xf3c01ed1
mov ecx, dword [ebp - 0x2c8]
mov edx, dword [ebp - 0x2c4]
mov dword [ebp - 0x3f0], ecx
mov dword [ebp - 0x3ec], edx
mov dword [ebp - 0x2d0], 0x61453c76
mov dword [ebp - 0x2cc], 0xa0df89f8
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x2d0]
mov ecx, dword [ebp - 0x2cc]
mov dword [ebp - 0x3e4], ecx
mov dword [ebp - 0x3e8], eax
mov dword [ebp - 0x2d8], 0xa980d4ad
mov dword [ebp - 0x2d4], 0xf3c01ed1
mov eax, dword [ebp - 0x2d8]
mov ecx, dword [ebp - 0x2d4]
mov dword [ebp - 0x2e0], 0x61453c76
mov dword [ebp - 0x660], eax
mov dword [ebp - 0x65c], ecx
mov dword [ebp - 0x2dc], 0xa0df89f8
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [ebp - 0x2dc]
movaps xmm1, xmmword [ebp - 0x3f0]
mov dword [ebp - 0x654], ecx
mov ecx, edi
mov dword [ebp - 0x658], eax
xorps xmm1, xmmword [ebp - 0x660]
movaps xmmword [ebp - 0x3f0], xmm1
movups xmmword [ebp - 0x4e0], xmm0
mov dword [ebp - 0x4d0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4cc], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x495422
sub ecx, edx
push ecx
push edi
lea ecx, [ebp - 0x4e0]
call fcn.00403040
mov byte [ebp - 4], 0x17
mov dword [ebp - 0x2e8], 0xeccc91fe
mov dword [ebp - 0x2e4], 0x86e04a92
mov eax, dword [ebp - 0x2e8]
mov ecx, dword [ebp - 0x2e4]
mov dword [ebp - 0x530], eax
mov dword [ebp - 0x52c], ecx
mov dword [ebp - 0x2f0], 0x27655004
mov dword [ebp - 0x2ec], 0x8092c6aa
mov eax, dword [ebp - 0x2f0]
mov ecx, dword [ebp - 0x2ec]
mov dword [ebp - 0x528], eax
mov dword [ebp - 0x524], ecx
mov dword [ebp - 0x2f8], 0xc6bd578a
mov dword [ebp - 0x2f4], 0x78eb881f
mov eax, dword [ebp - 0x2f8]
mov ecx, dword [ebp - 0x2f4]
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x51c], ecx
mov dword [ebp - 0x300], 0x74f800bd
mov dword [ebp - 0x2fc], 0xeaa1c3ae
mov eax, dword [ebp - 0x300]
mov ecx, dword [ebp - 0x2fc]
mov dword [ebp - 0x518], eax
mov dword [ebp - 0x514], ecx
mov dword [ebp - 0x308], 0xdf44da41
mov dword [ebp - 0x304], 0xe9dbdc11
mov eax, dword [ebp - 0x308]
mov ecx, dword [ebp - 0x304]
mov dword [ebp - 0x510], eax
mov dword [ebp - 0x50c], ecx
mov dword [ebp - 0x310], 0x2d77de8a
mov dword [ebp - 0x30c], 0x6d869c
mov eax, dword [ebp - 0x310]
mov ecx, dword [ebp - 0x30c]
mov dword [ebp - 0x508], eax
mov dword [ebp - 0x504], ecx
mov dword [ebp - 0x318], 0xa980d4ad
mov dword [ebp - 0x314], 0xf3c01ed1
mov eax, dword [ebp - 0x318]
mov ecx, dword [ebp - 0x314]
mov dword [ebp - 0x320], 0x61453c76
mov dword [ebp - 0x31c], 0xa0df89f8
mov dword [ebp - 0x700], eax
mov eax, dword [ebp - 0x320]
mov dword [ebp - 0x6fc], ecx
mov ecx, dword [ebp - 0x31c]
mov dword [ebp - 0x328], 0x99c738e7
mov dword [ebp - 0x324], 0x1b8ae46f
mov dword [ebp - 0x6f8], eax
mov eax, dword [ebp - 0x328]
mov dword [ebp - 0x6f4], ecx
mov ecx, dword [ebp - 0x324]
mov dword [ebp - 0x330], 0x23d873d8
mov dword [ebp - 0x32c], 0xaff386e6
mov dword [ebp - 0x6f0], eax
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x6ec], ecx
mov ecx, dword [ebp - 0x32c]
mov dword [ebp - 0x338], 0xb624f261
mov dword [ebp - 0x334], 0xd4fbbc75
mov dword [ebp - 0x6e8], eax
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x6e4], ecx
mov ecx, dword [ebp - 0x334]
mov dword [ebp - 0x340], 0x2d77deaa
mov dword [ebp - 0x33c], 0x6d869c
mov dword [ebp - 0x6e0], eax
mov eax, dword [ebp - 0x340]
mov dword [ebp - 0x6dc], ecx
mov ecx, dword [ebp - 0x33c]
movaps xmm1, xmmword [ebp - 0x530]
xorps xmm1, xmmword [ebp - 0x700]
mov dword [ebp - 0x6d8], eax
mov dword [ebp - 0x6d4], ecx
movaps xmmword [ebp - 0x530], xmm1
movaps xmm1, xmmword [ebp - 0x520]
xorps xmm1, xmmword [ebp - 0x6f0]
movaps xmmword [ebp - 0x520], xmm1
movaps xmm1, xmmword [ebp - 0x510]
xorps xmm1, xmmword [ebp - 0x6e0]
movaps xmmword [ebp - 0x510], xmm1
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x530]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x495698
sub ecx, edx
lea eax, [ebp - 0x530]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.0041fbf0
mov esi, dword [ebp - 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x438], xmm0
mov dword [ebp - 0x428], 0
or esi, 4
mov dword [ebp - 0x424], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x438], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x428], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x3f0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x495711
sub ecx, edx
lea eax, [ebp - 0x3f0]
push ecx
push eax
lea ecx, [ebp - 0x438]
call fcn.00418f00
mov dword [ebp - 0xd0], 0
lea edx, [ebp - 0xe0]
mov dword [ebp - 0xcc], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xe0], xmm0
push 0
movups xmm0, xmmword [eax]
or esi, 2
movups xmmword [ebp - 0xe0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xd0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x6c]
push eax
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0xcc], 0xf
mov ecx, dword [ebp - 0x40]
cmova edx, dword [ebp - 0xe0]
push 0
push 1
push 0xffffffffffffffff
call fcn.0050e2b0
and esi, 0xfffffffd
add esp, 0x14
mov edi, eax
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0xf
jbe 0x4957ea
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4957e0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
and esi, 0xfffffffb
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
mov dword [ebp - 0x1c], esi
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x424]
cmp ecx, 0xf
jbe 0x495849
mov edx, dword [ebp - 0x438]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x49583f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
mov dword [ebp - 0x428], 0
mov dword [ebp - 0x424], 0xf
mov byte [ebp - 0x438], 0
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x4cc]
cmp ecx, 0xf
jbe 0x4958a2
mov edx, dword [ebp - 0x4e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x495898
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
mov dword [ebp - 0x4d0], 0
mov dword [ebp - 0x4cc], 0xf
mov byte [ebp - 0x4e0], 0
test edi, edi
jne 0x495e1d
mov esi, dword [ebp - 0x6c]
mov ecx, esi
call fcn.00548990
cmp eax, 0x64
jne 0x495e1d
nop dword [eax + eax]
xor edx, edx
mov ecx, esi
call fcn.005481a0
push 0
lea ecx, [ebp - 0x80]
mov byte [ebp - 0x88], 0
mov edi, eax
call fcn.00417ef0
mov byte [ebp - 4], 0x1b
xorps xmm0, xmm0
mov byte [ebp - 0xa8], 0
push 0x18
movq qword [ebp - 0xa0], xmm0
mov byte [ebp - 0xa8], 3
call fcn.00433662
mov esi, eax
add esp, 4
lea eax, [ebp - 0x39]
mov dword [ebp - 0x5c4], esi
mov dword [ebp - 0x5c8], eax
mov byte [ebp - 4], 0x1c
mov ecx, edi
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x495951
sub ecx, edx
push ecx
push edi
mov ecx, esi
call fcn.00403040
mov dword [ebp - 0x5c4], 0
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0xa0], esi
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x348], 0xa9eca6d8
mov dword [ebp - 0x344], 0xf3c01ed1
mov eax, dword [ebp - 0x348]
mov ecx, dword [ebp - 0x344]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x350], 0x61453c76
mov dword [ebp - 0x34c], 0xa0df89f8
mov eax, dword [ebp - 0x350]
mov ecx, dword [ebp - 0x34c]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], ecx
mov dword [ebp - 0x358], 0xa980d4ad
mov dword [ebp - 0x354], 0xf3c01ed1
mov eax, dword [ebp - 0x358]
mov ecx, dword [ebp - 0x354]
mov dword [ebp - 0x360], 0x61453c76
mov dword [ebp - 0x670], eax
mov dword [ebp - 0x35c], 0xa0df89f8
mov eax, dword [ebp - 0x360]
mov dword [ebp - 0x66c], ecx
mov ecx, dword [ebp - 0x35c]
movaps xmm1, xmmword [ebp - 0x400]
mov dword [ebp - 0x668], eax
mov al, byte [ebp - 0x88]
mov dword [ebp - 0x664], ecx
xorps xmm1, xmmword [ebp - 0x670]
movaps xmmword [ebp - 0x400], xmm1
test al, al
jne 0x495a72
push 1
lea ecx, [ebp - 0x5d0]
mov byte [ebp - 0x88], 1
call fcn.00417ef0
mov eax, dword [ebp - 0x5cc]
mov esi, dword [ebp - 0x5d0]
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x7c], eax
jmp 0x495a7d
cmp al, 1
jne 0x496175
mov esi, dword [ebp - 0x80]
xorps xmm0, xmm0
mov dword [ebp - 0x4b8], 0
lea eax, [ebp - 0x400]
mov dword [ebp - 0x4b4], 0
movups xmmword [ebp - 0x4c8], xmm0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x495aa4
sub eax, edx
lea ecx, [ebp - 0x4c8]
push eax
lea eax, [ebp - 0x400]
push eax
call fcn.00403040
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x4c8]
push eax
lea eax, [ebp - 0x850]
mov ecx, esi
push eax
call fcn.00426db0
mov edi, dword [eax]
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x4b4]
cmp ecx, 0xf
jbe 0x495b19
mov edx, dword [ebp - 0x4c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x495b0f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
mov dword [ebp - 0x4b8], 0
mov dword [ebp - 0x4b4], 0xf
mov byte [ebp - 0x4c8], 0
mov byte [ebp - 4], 0x21
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 - 0x39c], 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], 0x1b
lea ecx, [ebp - 0xa0]
push dword [ebp - 0x39c]
call fcn.00417af0
push dword [ebp - 0x20]
call fcn.004412e6
add esp, 4
push 0
push 0xf4240
push edx
push eax
call fcn.00458650
mov edi, eax
mov byte [ebp - 0xc8], 0
mov eax, edx
mov byte [ebp - 0xc8], 5
xorps xmm0, xmm0
mov dword [ebp - 0x44], eax
movq qword [ebp - 0xc0], xmm0
mov dword [ebp - 0xc0], edi
mov dword [ebp - 0xbc], eax
mov byte [ebp - 4], 0x22
xorps xmm0, xmm0
mov dword [ebp - 0x368], 0xccedbdd9
mov dword [ebp - 0x364], 0xf3c01ed1
mov eax, dword [ebp - 0x368]
mov ecx, dword [ebp - 0x364]
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x370], 0x61453c76
mov dword [ebp - 0x36c], 0xa0df89f8
mov eax, dword [ebp - 0x370]
mov ecx, dword [ebp - 0x36c]
mov dword [ebp - 0x404], ecx
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x378], 0xa980d4ad
mov dword [ebp - 0x374], 0xf3c01ed1
mov eax, dword [ebp - 0x378]
mov ecx, dword [ebp - 0x374]
mov dword [ebp - 0x380], 0x61453c76
mov dword [ebp - 0x690], eax
mov dword [ebp - 0x68c], ecx
mov dword [ebp - 0x37c], 0xa0df89f8
mov eax, dword [ebp - 0x380]
mov ecx, dword [ebp - 0x37c]
movaps xmm1, xmmword [ebp - 0x410]
mov dword [ebp - 0x684], ecx
lea ecx, [ebp - 0x410]
mov dword [ebp - 0x688], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x690]
movaps xmmword [ebp - 0x410], xmm1
movups xmmword [ebp - 0x4f8], xmm0
mov dword [ebp - 0x4e8], 0
mov dword [ebp - 0x4e4], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x495cc0
sub ecx, edx
lea eax, [ebp - 0x410]
push ecx
push eax
lea ecx, [ebp - 0x4f8]
call fcn.00403040
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x4f8]
mov ecx, dword [ebp - 0x80]
push eax
lea eax, [ebp - 0x830]
push eax
call fcn.00426db0
mov esi, dword [eax]
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x4e4]
cmp ecx, 0xf
jbe 0x495d36
mov edx, dword [ebp - 0x4f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x495d2c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
mov dword [ebp - 0x4e8], 0
mov dword [ebp - 0x4e4], 0xf
mov byte [ebp - 0x4f8], 0
mov byte [ebp - 4], 0x26
mov al, byte [esi + 0x28]
mov edx, dword [ebp - 0x44]
mov byte [esi + 0x28], 5
mov ecx, dword [esi + 0x34]
mov byte [ebp - 0xc8], al
mov byte [ebp - 0x48], al
mov eax, dword [esi + 0x30]
mov dword [esi + 0x30], edi
mov dword [esi + 0x34], edx
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], ecx
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0xc0]
push dword [ebp - 0x48]
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 0x495db3
cmp al, 2
jne 0x496117
jmp 0x495dd5
push 2
lea ecx, [ebp - 0x5d8]
mov byte [esi], 2
call fcn.00417ef0
mov eax, dword [ebp - 0x5d8]
mov ecx, dword [ebp - 0x5d4]
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 0x495df4
mov ecx, eax
call fcn.00413d50
add dword [esi + 4], 0x10
jmp 0x495dfc
push eax
mov ecx, esi
call fcn.00424900
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x80]
push 1
call fcn.00417af0
mov esi, dword [ebp - 0x6c]
mov ecx, esi
call fcn.00548990
cmp eax, 0x64
je 0x4958e0
mov esi, dword [ebp - 0x70]
mov ecx, esi
call fcn.00548990
cmp eax, 0x64
je 0x495320
mov ecx, esi
call fcn.005482d0
mov ecx, dword [ebp - 0x40]
call fcn.004d39a0
mov dword [ebp - 0x388], 0xddf3bdc5
mov dword [ebp - 0x384], 0xf3b96cbe
mov eax, dword [ebp - 0x388]
mov ecx, dword [ebp - 0x384]
mov edi, dword [ebp - 0x74]
mov dword [ebp - 0x4a0], eax
mov dword [ebp - 0x49c], ecx
mov dword [ebp - 0x390], 0x61453c76
mov dword [ebp - 0x38c], 0xa0df89f8
mov eax, dword [ebp - 0x390]
mov ecx, dword [ebp - 0x38c]
mov dword [ebp - 0x498], eax
mov dword [ebp - 0x494], ecx
mov dword [ebp - 0x398], 0xa980d4ad
mov dword [ebp - 0x394], 0xf3c01ed1
mov eax, dword [ebp - 0x398]
mov ecx, dword [ebp - 0x394]
mov dword [ebp - 0x680], eax
mov dword [ebp - 0x58], 0x61453c76
mov dword [ebp - 0x67c], ecx
mov dword [ebp - 0x54], 0xa0df89f8
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x678], eax
lea eax, [ebp - 0x4a0]
mov dword [ebp - 0x674], ecx
mov ecx, edi
movaps xmm1, xmmword [ebp - 0x680]
xorps xmm1, xmmword [ebp - 0x4a0]
push eax
movaps xmmword [ebp - 0x4a0], xmm1
call fcn.0041af80
mov esi, eax
mov al, byte [esi]
test al, al
je 0x495f49
cmp al, 2
je 0x495f6b
mov ecx, esi
call fcn.004181e0
push eax
lea ecx, [ebp - 0x810]
call fcn.00402cf0
mov byte [ebp - 4], 0x2b
mov edx, str.cannot_use_push_back___with
push eax
lea ecx, [ebp - 0x828]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x2c
jmp 0x496146
push 2
lea ecx, [ebp - 0x5e0]
mov byte [esi], 2
call fcn.00417ef0
mov eax, dword [ebp - 0x5e0]
mov ecx, dword [ebp - 0x5dc]
mov dword [esi + 8], eax
mov dword [esi + 0xc], ecx
mov esi, dword [esi + 8]
lea ecx, [ebp - 0x98]
push ecx
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x495f9b
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 0x495fb9
push eax
mov ecx, esi
call fcn.00424900
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x90]
push 1
call fcn.00417af0
jmp 0x495fb9
mov edi, dword [ebp - 0x74]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x610]
call fcn.00402df0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x24]
cmp ecx, 0xf
jbe 0x496000
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x495ff6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x7a4]
cmp ecx, 0xf
jbe 0x496050
mov edx, dword [ebp - 0x7b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x496046
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496170
push ecx
push edx
call fcn.004338e3
add esp, 8
mov esi, dword [ebp - 0x78]
mov dword [ebp - 0x7a8], 0
mov dword [ebp - 0x7a4], 0xf
mov byte [ebp - 0x7b8], 0
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc esi
add esi, eax
mov dword [ebp - 0x78], esi
cmp byte [esi], 0
jne 0x494131
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x628]
call fcn.00402df0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x7d0]
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
lea ecx, [ebp - 0x98]
call fcn.004181e0
push eax
lea ecx, [ebp - 0x884]
call fcn.00402cf0
mov byte [ebp - 4], 0x14
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x89c]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x15
mov edx, 0x131
push eax
lea ecx, [ebp - 0x86c]
call fcn.00407cf0
add esp, 4
lea eax, [ebp - 0x86c]
push 0x5776e0
jmp 0x496165
mov ecx, esi
call fcn.004181e0
push eax
lea ecx, [ebp - 0x828]
call fcn.00402cf0
mov byte [ebp - 4], 0x29
mov edx, str.cannot_use_push_back___with
push eax
lea ecx, [ebp - 0x810]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x2a
push eax
mov edx, 0x134
lea ecx, [ebp - 0x7f8]
call fcn.00407cf0
add esp, 4
lea eax, [ebp - 0x7f8]
push 0x5776e0
push eax
call fcn.004351eb
call fcn.00402c60
call fcn.00438c60
lea ecx, [ebp - 0x88]
call fcn.004181e0
push eax
lea ecx, [ebp - 0x810]
call fcn.00402cf0
mov byte [ebp - 4], 0x1f
mov edx, str.cannot_use_operator___with_a_string_argument_with
push eax
lea ecx, [ebp - 0x828]
call fcn.0041ace0
add esp, 4
mov byte [ebp - 4], 0x20
mov edx, 0x131
push eax
lea ecx, [ebp - 0x7f8]
call fcn.00407cf0
add esp, 4
lea eax, [ebp - 0x7f8]
push 0x5776e0
push eax
call fcn.004351eb
int3