Function at 0x483f1e
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebx
mov ebx, esp
push ecx
push ecx
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x438
push esi
push edi
xor edi, edi
mov byte [ebp - 1], dl
push 0x104
lea eax, [ebp - 0x430]
mov dword [ebp - 0x54], ecx
push edi
push eax
mov dword [ebp - 0x10], edi
call fcn.00438880
add esp, 0xc
lea eax, [ebp - 0x430]
xor ecx, ecx
push eax
movzx eax, byte [ebp - 1]
xor eax, 1
push ecx
push ecx
lea eax, [eax*2 + 0x1a]
push eax
push ecx
call dword [0x4d62bc]
lea eax, [ebx + 0x40]
push eax
lea edx, [ebp - 0x430]
lea ecx, [ebp - 0x27c]
call fcn.0040ef10
xor eax, eax
sub esp, 0x14
mov ecx, esp
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x27c]
push eax
call fcn.0040dfa6
push edi
mov dl, 1
lea ecx, [ebp - 0xbc]
call fcn.0048d94f
mov eax, dword [ebp - 0xb8]
add esp, 0x1c
sub eax, dword [ebp - 0xbc]
jne 0x484041
lea ecx, [ebp - 0xbc]
call fcn.0040da76
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x48521b
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x54], eax
push 0x18
pop edi
cmp esi, eax
je 0x484008
mov ecx, esi
call fcn.004077ce
add esi, edi
cmp esi, dword [ebp - 0x54]
jne 0x483ff7
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
sub eax, esi
mov dword [ebp - 8], esi
cdq
idiv edi
imul eax, eax, 0x18
mov dword [ebp - 0x18], eax
cmp eax, 0x1000
jb 0x484035
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 8]
push eax
call fcn.004076c3
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 8]
pop ecx
pop ecx
push eax
push esi
call fcn.0041e009
jmp 0x485219
push 0x18
pop esi
cdq
mov ecx, 0xa5620fee
idiv esi
mov dword [ebp - 0x58], esi
mov edx, 0xffb2cff4
mov dword [ebp - 0x28], eax
test eax, eax
je 0x4847af
mov edi, 0xee5bb0c1
mov dword [ebp - 0x148], ecx
mov eax, 0x3485ac91
mov dword [ebp - 0x150], edi
mov dword [ebp - 0x100], edi
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x170], edi
mov dword [ebp - 0xe0], edi
mov dword [ebp - 0x130], edi
mov dword [ebp - 0x190], edi
mov dword [ebp - 0x1b0], edi
mov dword [ebp - 0x140], edi
mov edi, dword [ebp - 0xbc]
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x144], edx
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0xf0], 0x7091c03
mov dword [ebp - 0xec], 0x57b79f83
mov dword [ebp - 0xe8], 0xb86fa0
mov dword [ebp - 0xe4], 0xcfc4fa1e
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x158], ecx
mov dword [ebp - 0x154], edx
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x164], edx
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], ecx
mov dword [ebp - 0xd4], edx
mov dword [ebp - 0xd0], 0x7091c03
mov dword [ebp - 0xcc], 0x57b79f83
mov dword [ebp - 0xc8], 0xb86fa0
mov dword [ebp - 0xc4], 0xcfc4fa1e
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x188], ecx
mov dword [ebp - 0x184], edx
mov dword [ebp - 0x180], 0x7091c03
mov dword [ebp - 0x17c], 0x57b79f83
mov dword [ebp - 0x178], 0xb86fa0
mov dword [ebp - 0x174], 0xcfc4fa1e
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a8], ecx
mov dword [ebp - 0x1a4], edx
mov dword [ebp - 0x1a0], 0x7091c03
mov dword [ebp - 0x19c], 0x57b79f83
mov dword [ebp - 0x198], 0xb86fa0
mov dword [ebp - 0x194], 0xcfc4fa1e
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], ecx
mov dword [ebp - 0x134], edx
jmp 0x4841f8
mov ecx, 0xa5620fee
mov edx, 0xffb2cff4
mov eax, 0x3485ac91
mov dword [ebp - 0x78], ecx
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x80], 0xbc0ef39d
mov dword [ebp - 0x7c], 0x60cbe9c3
movaps xmm0, xmmword [ebp - 0x80]
pxor xmm0, xmmword [ebp - 0x150]
movaps xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x50], 0x8022e39d
mov dword [ebp - 0x4c], 0x4cc08cf2
mov dword [ebp - 0x48], 0xd60c6a9a
mov dword [ebp - 0x44], 0xdfdca09d
movaps xmm0, xmmword [ebp - 0x50]
pxor xmm0, xmmword [ebp - 0x100]
movaps xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x40], 0x737d7950
mov dword [ebp - 0x3c], 0x24d0f1ea
mov dword [ebp - 0x38], 0xb86ffc
mov dword [ebp - 0x34], 0xcfc4fa1e
movaps xmm0, xmmword [ebp - 0x40]
pxor xmm0, xmmword [ebp - 0xf0]
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x70]
mov dword [ebp - 0x68], ecx
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x64], edx
lea edx, [ebp - 0x27c]
movaps xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x70], 0xee5bb09d
movaps xmm0, xmmword [ebp - 0x70]
pxor xmm0, xmmword [ebp - 0x160]
push eax
movaps xmmword [ebp - 0x70], xmm0
call fcn.0040eea7
pop ecx
push edi
mov ecx, eax
call fcn.0040c90c
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00407752
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x1e8]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x200]
call fcn.00407752
cmp dword [ebx + 0x24], 0x10
lea eax, [ebx + 0x10]
push dword [ebx + 0x20]
cmovae eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x200]
push eax
call fcn.0040df4d
push eax
lea ecx, [ebp - 0x218]
call fcn.00407752
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x218]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x230]
call fcn.00407752
lea ecx, [ebp - 0x218]
call fcn.004077ce
lea ecx, [ebp - 0x200]
call fcn.004077ce
lea ecx, [ebp - 0x1e8]
call fcn.004077ce
lea ecx, [ebp - 0x248]
call fcn.004077ce
mov eax, 0xa5620fee
mov dword [ebp - 0xa0], 0xbc0ef39d
mov ecx, 0xffb2cff4
mov dword [ebp - 0x9c], 0x60cbe9c3
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], ecx
movaps xmm0, xmmword [ebp - 0xa0]
pxor xmm0, xmmword [ebp - 0x170]
movaps xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x50], 0x8d34fc9d
lea edx, [ebp - 0x27c]
mov dword [ebp - 0x4c], 0x71a5c0f0
mov dword [ebp - 0x48], 0xcb077b96
mov dword [ebp - 0x44], 0x91dda687
movaps xmm0, xmmword [ebp - 0x50]
pxor xmm0, xmmword [ebp - 0xe0]
movaps xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x40], 0x736c4f23
mov dword [ebp - 0x3c], 0x30d9f6f7
mov dword [ebp - 0x38], 0xb833d3
mov dword [ebp - 0x34], 0xcfc4fa1e
movaps xmm0, xmmword [ebp - 0x40]
pxor xmm0, xmmword [ebp - 0xd0]
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x90]
mov dword [ebp - 0x84], ecx
lea ecx, [ebp - 0x248]
movaps xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x90], 0xee5bb09d
mov dword [ebp - 0x8c], 0x3485ac91
movaps xmm0, xmmword [ebp - 0x90]
pxor xmm0, xmmword [ebp - 0x130]
push eax
movaps xmmword [ebp - 0x90], xmm0
call fcn.0040eea7
pop ecx
push edi
mov ecx, eax
call fcn.0040c90c
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00407752
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x1e8]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x200]
call fcn.00407752
cmp dword [ebx + 0x24], 0x10
lea eax, [ebx + 0x10]
push dword [ebx + 0x20]
cmovae eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x200]
push eax
call fcn.0040df4d
push eax
lea ecx, [ebp - 0x218]
call fcn.00407752
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x218]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x264]
call fcn.00407752
lea ecx, [ebp - 0x218]
call fcn.004077ce
lea ecx, [ebp - 0x200]
call fcn.004077ce
lea ecx, [ebp - 0x1e8]
call fcn.004077ce
lea ecx, [ebp - 0x248]
call fcn.004077ce
mov dword [ebp - 0x1d0], 0x8775809e
mov eax, 0xcfc4fa1e
mov dword [ebp - 0x1cc], 0x4ce0c8ff
mov dword [ebp - 0x1c8], 0xc7066b8b
mov dword [ebp - 0x1c4], 0x89d7a3da
movaps xmm0, xmmword [ebp - 0x1d0]
pxor xmm0, xmmword [ebp - 0x190]
mov dword [ebp - 0x1c0], 0x656d7066
mov dword [ebp - 0x1bc], 0x5e2dcdf
mov dword [ebp - 0x1b8], 0x54f62af2
mov dword [ebp - 0x1b4], eax
movaps xmmword [ebp - 0x1d0], xmm0
movaps xmm0, xmmword [ebp - 0x1c0]
pxor xmm0, xmmword [ebp - 0x180]
movaps xmmword [ebp - 0x1c0], xmm0
mov dword [ebp - 0x50], 0x8a35f99d
mov dword [ebp - 0x4c], 0x50e0d4f4
lea edx, [ebp - 0x27c]
mov dword [ebp - 0x48], 0xc63e4daa
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x44], 0x92ddbd9c
movaps xmm0, xmmword [ebp - 0x50]
pxor xmm0, xmmword [ebp - 0x1b0]
movaps xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0xb0]
mov dword [ebp - 0x40], 0x7f6c3166
mov dword [ebp - 0x3c], 0x24d9faf7
mov dword [ebp - 0x38], 0x5fd600c9
movaps xmm0, xmmword [ebp - 0x40]
pxor xmm0, xmmword [ebp - 0x1a0]
movaps xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0xb0], 0xee5bb09d
mov dword [ebp - 0xac], 0x3485ac91
mov dword [ebp - 0xa8], 0xa5620fee
mov dword [ebp - 0xa4], 0xffb2cff4
movaps xmm0, xmmword [ebp - 0xb0]
pxor xmm0, xmmword [ebp - 0x140]
push eax
movaps xmmword [ebp - 0xb0], xmm0
call fcn.0040eea7
pop ecx
push edi
mov ecx, eax
call fcn.0040c90c
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00407752
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x1e8]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x200]
call fcn.00407752
cmp dword [ebx + 0x24], 0x10
lea eax, [ebx + 0x10]
push dword [ebx + 0x20]
cmovae eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x200]
push eax
call fcn.0040df4d
push eax
lea ecx, [ebp - 0x218]
call fcn.00407752
lea eax, [ebp - 0x1d0]
push eax
lea ecx, [ebp - 0x218]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x120]
call fcn.00407752
lea ecx, [ebp - 0x218]
call fcn.004077ce
lea ecx, [ebp - 0x200]
call fcn.004077ce
lea ecx, [ebp - 0x1e8]
call fcn.004077ce
lea ecx, [ebp - 0x248]
call fcn.004077ce
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x230]
push eax
call fcn.0040dfa6
call fcn.0049bd1e
add esp, 0x18
test al, al
jne 0x484711
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x264]
push eax
call fcn.0040dfa6
call fcn.0049bd1e
add esp, 0x18
test al, al
jne 0x484711
cmp byte [ebx + 8], al
je 0x48477f
sub esp, 0x18
xor eax, eax
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
lea eax, [ebp - 0x120]
push eax
call fcn.0040dfa6
call fcn.0049bd1e
add esp, 0x18
test al, al
je 0x48477f
mov ecx, dword [ebp - 0x20]
mov eax, ecx
mov edx, dword [ebp - 0x24]
sub eax, edx
mov dword [ebp - 8], edx
cdq
idiv esi
and dword [ebp - 0x18], 0
mov dword [ebp - 0x24c], ecx
mov dword [ebp - 0x14], eax
test eax, eax
je 0x48475c
mov eax, dword [ebp - 8]
mov edx, edi
mov ecx, eax
call fcn.0040efa8
test al, al
jne 0x48477f
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
inc ecx
add eax, esi
mov dword [ebp - 0x18], ecx
mov dword [ebp - 8], eax
cmp ecx, dword [ebp - 0x14]
jb 0x484735
mov ecx, dword [ebp - 0x24c]
push edi
cmp ecx, dword [ebp - 0x1c]
je 0x484776
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
call fcn.0040dfa6
add dword [ebp - 0x20], esi
jmp 0x48477f
push ecx
lea ecx, [ebp - 0x24]
call fcn.0041030b
lea ecx, [ebp - 0x120]
call fcn.004077ce
lea ecx, [ebp - 0x264]
call fcn.004077ce
lea ecx, [ebp - 0x230]
call fcn.004077ce
add edi, esi
sub dword [ebp - 0x28], 1
jne 0x4841e9
mov edi, dword [ebp - 0x10]
lea ecx, [ebp - 0xbc]
call fcn.0040da76
mov ecx, dword [ebp - 0x20]
mov eax, ecx
mov esi, dword [ebp - 0x24]
mov dword [ebp - 8], ecx
sub eax, esi
jne 0x48486a
push eax
push 0x4ea7a3
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], 0xf
call fcn.00407850
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x120]
push ecx
cmp eax, dword [ebp - 0x1c]
je 0x484815
mov ecx, eax
call fcn.00407752
mov ecx, dword [ebp - 0x20]
add ecx, 0x18
mov dword [ebp - 0x20], ecx
jmp 0x484821
push eax
lea ecx, [ebp - 0x24]
call fcn.004101c9
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 8], ecx
cmp eax, 0x10
jb 0x484867
mov ecx, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 8], ecx
cmp eax, 0x1000
jb 0x484858
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 8]
push eax
call fcn.004076c3
mov eax, dword [ebp - 0x18]
pop ecx
pop ecx
mov ecx, dword [ebp - 8]
push eax
push ecx
call fcn.0041e009
pop ecx
pop ecx
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 8], ecx
mov esi, dword [ebp - 0x24]
xor edx, edx
mov eax, ecx
sub eax, esi
mov dword [ebp - 0x18], edx
cdq
idiv dword [ebp - 0x58]
test eax, eax
je 0x4851bb
mov eax, 0xa5620fee
mov dword [ebp - 0x1b0], 0xee5bb0c1
mov edx, 0x3485ac91
mov dword [ebp - 0x1a8], eax
mov ecx, 0xffb2cff4
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x148], eax
xor eax, eax
mov dword [ebp - 0x1ac], edx
mov dword [ebp - 0x1a4], ecx
mov dword [ebp - 0x1a0], 0x7091c03
mov dword [ebp - 0x19c], 0x57b79f83
mov dword [ebp - 0x198], 0xb86fa0
mov dword [ebp - 0x194], 0xcfc4fa1e
mov dword [ebp - 0x140], 0xee5bb0c1
mov dword [ebp - 0x13c], edx
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x190], 0xee5bb0c1
mov dword [ebp - 0x18c], edx
mov dword [ebp - 0x184], ecx
mov dword [ebp - 0x180], 0x7091c03
mov dword [ebp - 0x17c], 0x57b79f83
mov dword [ebp - 0x178], 0xb86fa0
mov dword [ebp - 0x174], 0xcfc4fa1e
mov dword [ebp - 0x130], 0xee5bb0c1
mov dword [ebp - 0x12c], edx
mov dword [ebp - 0x124], ecx
mov dword [ebp - 0x2a0], 0xee5bb0c1
mov dword [ebp - 0x29c], edx
mov dword [ebp - 0x294], ecx
mov dword [ebp - 0x290], 0x7091c03
mov dword [ebp - 0x28c], 0x57b79f83
mov dword [ebp - 0x288], 0xb86fa0
mov dword [ebp - 0x284], 0xcfc4fa1e
mov dword [ebp - 0x2c0], 0xee5bb0c1
mov dword [ebp - 0x2bc], edx
mov dword [ebp - 0x2b4], ecx
mov dword [ebp - 0x2b0], 0x7091c03
mov dword [ebp - 0x2ac], 0x57b79f83
mov dword [ebp - 0x2a8], 0xb86fa0
mov dword [ebp - 0x2a4], 0xcfc4fa1e
mov dword [ebp - 0x170], 0xee5bb0c1
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x164], ecx
mov dword [ebp - 0x160], 0xee5bb0c1
mov dword [ebp - 0x15c], edx
mov dword [ebp - 0x154], ecx
mov dword [ebp - 0x150], 0xee5bb0c1
mov dword [ebp - 0x14c], edx
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x50], 0x8022e39d
lea edx, [esi + eax]
mov dword [ebp - 0x4c], 0x4cc08cf2
lea eax, [ebp - 0x50]
mov dword [ebp - 0x48], 0xd60c6a9a
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x44], 0xdfdca09d
or edi, 2
movaps xmm0, xmmword [ebp - 0x50]
pxor xmm0, xmmword [ebp - 0x1b0]
mov dword [ebp - 0x40], 0x737d7950
mov dword [ebp - 0x3c], 0x24d0f1ea
mov dword [ebp - 0x38], 0xb86ffc
mov dword [ebp - 0x34], 0xcfc4fa1e
movaps xmmword [ebp - 0x50], xmm0
movaps xmm0, xmmword [ebp - 0x40]
pxor xmm0, xmmword [ebp - 0x1a0]
push eax
movaps xmmword [ebp - 0x40], xmm0
call fcn.0040eea7
mov dword [ebp - 0xb0], 0xee5bb09d
lea edx, [ebp - 0x27c]
mov dword [ebp - 0xac], 0x3485ac91
mov esi, eax
mov dword [ebp - 0xa8], 0xa5620fee
lea eax, [ebp - 0xb0]
mov dword [ebp - 0xa4], 0xffb2cff4
movaps xmm0, xmmword [ebp - 0xb0]
pxor xmm0, xmmword [ebp - 0x140]
pop ecx
push eax
lea ecx, [ebp - 0x248]
movaps xmmword [ebp - 0xb0], xmm0
call fcn.0040eea7
pop ecx
push esi
push eax
push dword [ebp - 0x58]
lea ecx, [ebp - 0x230]
call fcn.004120e5
cmp dword [ebx + 0x24], 0x10
lea eax, [ebx + 0x10]
push dword [ebx + 0x20]
cmovae eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x230]
push eax
call fcn.0040df4d
push eax
lea ecx, [ebp - 0x218]
call fcn.00407752
lea ecx, [ebp - 0x230]
call fcn.004077ce
lea ecx, [ebp - 0x248]
call fcn.004077ce
and edi, 0xfffffffd
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x10], edi
call fcn.004077ce
mov ecx, edi
test cl, 1
je 0x484ba0
mov eax, dword [ebp - 0x1b4]
and ecx, 0xfffffffe
mov dword [ebp - 0x10], ecx
cmp eax, 0x10
jb 0x484ba0
mov ecx, dword [ebp - 0x1c8]
inc eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], ecx
cmp eax, 0x1000
jb 0x484b94
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.004076c3
mov eax, dword [ebp - 8]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
push eax
push ecx
call fcn.0041e009
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x28]
lea eax, [ebp - 0x50]
add edx, dword [ebp - 0x24]
or ecx, 8
mov dword [ebp - 0x50], 0x8d34fc9d
mov dword [ebp - 0x4c], 0x71a5c0f0
mov dword [ebp - 0x48], 0xcb077b96
mov dword [ebp - 0x44], 0x91dda687
movaps xmm0, xmmword [ebp - 0x50]
pxor xmm0, xmmword [ebp - 0x190]
mov dword [ebp - 0x40], 0x736c4f23
mov dword [ebp - 0x3c], 0x30d9f6f7
mov dword [ebp - 0x38], 0xb833d3
mov dword [ebp - 0x34], 0xcfc4fa1e
movaps xmmword [ebp - 0x50], xmm0
movaps xmm0, xmmword [ebp - 0x40]
pxor xmm0, xmmword [ebp - 0x180]
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x248]
push eax
movaps xmmword [ebp - 0x40], xmm0
call fcn.0040eea7
mov dword [ebp - 0xa0], 0xee5bb09d
lea edx, [ebp - 0x27c]
mov dword [ebp - 0x9c], 0x3485ac91
mov esi, eax
mov dword [ebp - 0x98], 0xa5620fee
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x94], 0xffb2cff4
movaps xmm0, xmmword [ebp - 0xa0]
pxor xmm0, xmmword [ebp - 0x130]
pop ecx
push eax
lea ecx, [ebp - 0x1c8]
movaps xmmword [ebp - 0xa0], xmm0
call fcn.0040eea7
pop ecx
push esi
push eax
push dword [ebp - 0x58]
lea ecx, [ebp - 0x230]
call fcn.004120e5
cmp dword [ebx + 0x24], 0x10
lea eax, [ebx + 0x10]
push dword [ebx + 0x20]
cmovae eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x230]
push eax
call fcn.0040df4d
push eax
lea ecx, [ebp - 0x200]
call fcn.00407752
lea ecx, [ebp - 0x230]
call fcn.004077ce
lea ecx, [ebp - 0x1c8]
call fcn.004077ce
mov edi, dword [ebp - 0x10]
lea ecx, [ebp - 0x248]
and edi, 0xfffffff7
mov dword [ebp - 0x10], edi
call fcn.004077ce
mov ecx, edi
test cl, 4
je 0x484d1a
mov eax, dword [ebp - 0x250]
and ecx, 0xfffffffb
mov dword [ebp - 0x10], ecx
cmp eax, 0x10
jb 0x484d1a
mov ecx, dword [ebp - 0x264]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 8], ecx
cmp eax, 0x1000
jb 0x484d0e
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
call fcn.004076c3
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 8]
push eax
push ecx
call fcn.0041e009
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0x28]
lea eax, [ebp - 0xe0]
add edx, dword [ebp - 0x24]
mov edi, 0xcfc4fa1e
mov dword [ebp - 0xe0], 0x8a35f99d
or ecx, 0x20
mov dword [ebp - 0xdc], 0x50e0d4f4
mov dword [ebp - 0xd8], 0xc63e4daa
mov dword [ebp - 0xd4], 0x92ddbd9c
movaps xmm0, xmmword [ebp - 0xe0]
pxor xmm0, xmmword [ebp - 0x2a0]
mov dword [ebp - 0xd0], 0x7f6c3166
mov dword [ebp - 0xcc], 0x24d9faf7
mov dword [ebp - 0xc8], 0x5fd600c9
mov dword [ebp - 0xc4], edi
movaps xmmword [ebp - 0xe0], xmm0
movaps xmm0, xmmword [ebp - 0xd0]
pxor xmm0, xmmword [ebp - 0x290]
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x248]
push eax
movaps xmmword [ebp - 0xd0], xmm0
call fcn.0040eea7
mov dword [ebp - 0x100], 0x8775809e
lea edx, [ebp - 0x27c]
mov dword [ebp - 0xfc], 0x4ce0c8ff
mov esi, eax
mov dword [ebp - 0xf8], 0xc7066b8b
lea eax, [ebp - 0x90]
mov dword [ebp - 0xf4], 0x89d7a3da
movaps xmm0, xmmword [ebp - 0x100]
pxor xmm0, xmmword [ebp - 0x2c0]
movaps xmmword [ebp - 0x100], xmm0
mov dword [ebp - 0xf0], 0x656d7066
mov dword [ebp - 0xec], 0x57b79f83
mov dword [ebp - 0xe8], 0xb86fa0
mov dword [ebp - 0xe4], edi
movaps xmm0, xmmword [ebp - 0xf0]
pxor xmm0, xmmword [ebp - 0x2b0]
movaps xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0x90], 0xee5bb09d
mov dword [ebp - 0x8c], 0x3485ac91
mov dword [ebp - 0x88], 0xa5620fee
mov dword [ebp - 0x84], 0xffb2cff4
movaps xmm0, xmmword [ebp - 0x90]
pxor xmm0, xmmword [ebp - 0x170]
pop ecx
push eax
lea ecx, [ebp - 0x1c8]
movaps xmmword [ebp - 0x90], xmm0
call fcn.0040eea7
pop ecx
push esi
push eax
push dword [ebp - 0x58]
lea ecx, [ebp - 0x264]
call fcn.004120e5
cmp dword [ebx + 0x24], 0x10
lea eax, [ebx + 0x10]
push dword [ebx + 0x20]
cmovae eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x264]
push eax
call fcn.0040df4d
push eax
lea ecx, [ebp - 0x230]
call fcn.00407752
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x230]
call fcn.0040c8eb
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00407752
lea ecx, [ebp - 0x230]
call fcn.004077ce
lea ecx, [ebp - 0x264]
call fcn.004077ce
lea ecx, [ebp - 0x1c8]
call fcn.004077ce
mov edi, dword [ebp - 0x10]
and edi, 0xffffffdf
lea ecx, [ebp - 0x248]
mov dword [ebp - 0x10], edi
call fcn.004077ce
mov eax, edi
test al, 0x10
je 0x484f53
and eax, 0xffffffef
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x34]
cmp eax, 0x10
jb 0x484f53
mov ecx, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 8], ecx
cmp eax, 0x1000
jb 0x484f4a
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
call fcn.004076c3
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
mov ecx, dword [ebp - 8]
push eax
push ecx
call fcn.0041e009
pop ecx
pop ecx
mov dword [ebp - 0x80], 0xbc0ef39d
lea eax, [ebp - 0x80]
mov dword [ebp - 0x7c], 0x60cbe9c3
lea edx, [ebp - 0x218]
mov dword [ebp - 0x78], 0xa5620fee
sub esp, 0x18
mov dword [ebp - 0x74], 0xffb2cff4
mov ecx, esp
movaps xmm0, xmmword [ebp - 0x80]
pxor xmm0, xmmword [ebp - 0x160]
push eax
movaps xmmword [ebp - 0x80], xmm0
call fcn.0040eea7
pop ecx
call fcn.0049bd1e
mov esi, dword [ebp - 0x28]
add esp, 0x18
test al, al
je 0x484ff6
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 1]
push ecx
lea ecx, [ebp - 9]
mov byte [ebp - 1], 0
push ecx
add eax, esi
mov byte [ebp - 9], 1
lea ecx, [ebp - 0x218]
push ecx
push eax
lea eax, [ebx + 0x58]
push eax
lea eax, [ebx + 0x28]
push eax
lea ecx, [ebp - 0x324]
call fcn.0040f3fd
mov edi, dword [ebp - 0x54]
mov ecx, edi
push eax
call fcn.0040b19a
lea ecx, [ebp - 0x2d8]
call fcn.004077ce
lea ecx, [ebp - 0x324]
call fcn.0040aef6
jmp 0x484ff9
mov edi, dword [ebp - 0x54]
mov dword [ebp - 0x70], 0xbc0ef39d
lea eax, [ebp - 0x70]
mov dword [ebp - 0x6c], 0x60cbe9c3
lea edx, [ebp - 0x200]
mov dword [ebp - 0x68], 0xa5620fee
sub esp, 0x18
mov dword [ebp - 0x64], 0xffb2cff4
mov ecx, esp
movaps xmm0, xmmword [ebp - 0x70]
pxor xmm0, xmmword [ebp - 0x150]
push eax
movaps xmmword [ebp - 0x70], xmm0
call fcn.0040eea7
pop ecx
call fcn.0049bd1e
add esp, 0x18
test al, al
je 0x485094
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 9]
push ecx
lea ecx, [ebp - 1]
mov byte [ebp - 9], 0
push ecx
add eax, esi
mov byte [ebp - 1], 0
lea ecx, [ebp - 0x200]
push ecx
push eax
lea eax, [ebx + 0x58]
push eax
lea eax, [ebx + 0x28]
push eax
lea ecx, [ebp - 0x324]
call fcn.0040f3fd
push eax
mov ecx, edi
call fcn.0040b19a
lea ecx, [ebp - 0x2d8]
call fcn.004077ce
lea ecx, [ebp - 0x324]
call fcn.0040aef6
cmp byte [ebx + 8], 0
je 0x485170
mov eax, 0xa5620fee
mov dword [ebp - 0xc0], 0xbc0ef39d
mov ecx, 0xffb2cff4
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], ecx
lea edx, [ebp - 0x1e8]
mov dword [ebp - 0xbc], 0x60cbe9c3
sub esp, 0x18
movaps xmm1, xmmword [ebp - 0xc0]
mov dword [ebp - 0x118], eax
lea eax, [ebp - 0xc0]
mov dword [ebp - 0x114], ecx
mov ecx, esp
mov dword [ebp - 0x120], 0xee5bb0c1
mov dword [ebp - 0x11c], 0x3485ac91
pxor xmm1, xmmword [ebp - 0x120]
push eax
movaps xmmword [ebp - 0xc0], xmm1
call fcn.0040eea7
pop ecx
call fcn.0049bd1e
add esp, 0x18
test al, al
je 0x485170
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 9]
push ecx
lea ecx, [ebp - 1]
mov byte [ebp - 9], 1
push ecx
add eax, esi
mov byte [ebp - 1], 0
lea ecx, [ebp - 0x1e8]
push ecx
push eax
lea eax, [ebx + 0x58]
push eax
lea eax, [ebx + 0x28]
push eax
lea ecx, [ebp - 0x324]
call fcn.0040f3fd
push eax
mov ecx, edi
call fcn.0040b19a
lea ecx, [ebp - 0x2d8]
call fcn.004077ce
lea ecx, [ebp - 0x324]
call fcn.0040aef6
lea ecx, [ebp - 0x1e8]
call fcn.004077ce
lea ecx, [ebp - 0x200]
call fcn.004077ce
lea ecx, [ebp - 0x218]
call fcn.004077ce
mov ecx, dword [ebp - 0x20]
mov eax, ecx
push 0x18
pop edi
add esi, edi
inc dword [ebp - 0x18]
mov dword [ebp - 0x28], esi
mov esi, dword [ebp - 0x24]
sub eax, esi
cdq
idiv edi
mov edi, dword [ebp - 0x10]
cmp dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 8], ecx
jb 0x484a2f
test esi, esi
je 0x48521b
cmp esi, ecx
je 0x4851d7
mov edi, dword [ebp - 8]
mov ecx, esi
call fcn.004077ce
add esi, 0x18
cmp esi, edi
jne 0x4851c6
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
sub eax, esi
mov dword [ebp - 0x14], esi
push 0x18
cdq
pop ecx
idiv ecx
imul eax, eax, 0x18
mov dword [ebp - 0x54], eax
cmp eax, 0x1000
jb 0x485207
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.004076c3
mov eax, dword [ebp - 0x54]
mov esi, dword [ebp - 0x14]
pop ecx
pop ecx
push eax
push esi
call fcn.0041e009
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
pop ecx
pop ecx
lea ecx, [ebp - 0x27c]
call fcn.004077ce
lea ecx, [ebx + 0x10]
call fcn.004077ce
lea ecx, [ebx + 0x28]
call fcn.004077ce
lea ecx, [ebx + 0x40]
call fcn.004077ce
lea ecx, [ebx + 0x58]
call fcn.004077ce
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret