Function at 0x515cc0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x10c]
cmp eax, dword [ecx + 8]
jbe 0x516adc
sub esp, 0x18c
mov ecx, dword [esp + 0x1b8]
mov edx, dword [esp + 0x1a0]
cmp ecx, edx
jl 0x516a33
mov eax, dword [esp + 0x19c]
mov ebx, dword [esp + 0x1a4]
cmp edx, ecx
jl 0x516a05
test ecx, ecx
jbe 0x516ad4
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x1a4], ebx
mov ebp, dword [esp + 0x1b4]
mov esi, dword [ebp]
lea edi, [esi - 2]
xchg edi, ebx
neg ebx
xchg edi, ebx
dec esi
mov dword [esp + 0xa4], eax
mov eax, 1
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xa4]
jmp 0x515d6f
shl ebx, 1
imul esi, esi
lea edx, [esi + 1]
imul edi, edx
mov edx, dword [esp + 0x1a0]
mov dword [esp + 0x78], ebx
mov ebx, dword [esp + 0x1a4]
mov ebx, dword [esp + 0x78]
cmp ebx, 0x20
jl 0x515d52
mov dword [esp + 0xc8], eax
mov dword [esp + 0x68], edi
nop
nop
lea eax, [0x633500]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00442930
mov eax, dword [esp + 0xc]
mov dword [esp + 0xc4], eax
mov dword [eax], 1
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
mov ecx, dword [esp + 0x1b8]
shl ecx, 6
mov dword [esp + 0x18], ecx
call fcn.00513f70
mov eax, dword [esp + 0x24]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xac], ecx
mov edx, dword [esp + 0x20]
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov ebx, dword [esp + 0xc4]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], eax
mov edx, dword [esp + 0x1b4]
mov dword [esp + 0x24], edx
mov ebx, dword [esp + 0x1b8]
mov dword [esp + 0x28], ebx
mov ebp, dword [esp + 0x1bc]
mov dword [esp + 0x2c], ebp
call fcn.00511ff0
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x1b8]
cmp eax, ebx
jge 0x5169ed
mov edx, dword [esp + 0x58]
cmp edx, ebx
jl 0x51695c
mov ebp, ebx
mov esi, dword [esp + 0xac]
cmp eax, ebx
jge 0x516955
mov dword [esp + 0x58], edx
mov dword [esp + 0xc0], esi
mov dword [esp + 0x4c], ebx
cmp ecx, esi
je 0x515ecb
mov dword [esp], esi
mov dword [esp + 4], ecx
shl eax, 2
mov dword [esp + 8], eax
call fcn.0045b690
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xc0]
mov ebx, eax
mov ebp, edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0xc0], ebp
mov dword [esp + 0x80], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0xbc], edx
lea esi, [0x633500]
mov dword [esp], esi
mov edi, dword [esp + 0x1b8]
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00442930
mov eax, dword [esp + 0xc]
mov dword [esp + 0xc4], eax
mov dword [eax], 1
lea edi, [esp + 0xcc]
xor eax, eax
call fcn.0045af60
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0xbc]
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x1c], ebx
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x20], ebp
mov esi, dword [esp + 0x1b4]
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], ecx
mov edi, dword [esp + 0x1bc]
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x68]
neg eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
call fcn.0050f840
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
mov dword [esp + 0xcc], edx
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ecx
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xdc]
mov edx, dword [esp + 0xe0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov eax, dword [esp + 0xc8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1a0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x1bc]
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ecx
call fcn.0050f840
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
mov dword [esp + 0xd8], edx
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], ecx
mov eax, dword [esp + 0x1b8]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1bc]
mov ebx, dword [esp + 0x1b4]
mov ebp, 2
jmp 0x51619a
mov dword [esp + 0x84], esi
mov ebp, dword [esp + esi*4 + 0xc4]
mov ecx, dword [esp + esi*4 + 0xc8]
mov esi, dword [esp + esi*4 + 0xc0]
mov eax, dword [esp + 0xd8]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xe0]
mov dword [esp], edi
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x1bc]
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ecx
call fcn.0050f840
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x84]
mov dword [esp + ebx*4 + 0xcc], eax
mov dword [esp + ebx*4 + 0xd0], ecx
mov dword [esp + ebx*4 + 0xd4], edx
mov eax, dword [esp + 0x74]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x1b8]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1bc]
mov ebx, dword [esp + 0x1b4]
cmp ebp, 0x10
jge 0x5161d1
jae 0x516ac8
mov dword [esp + 0x74], ebp
lea esi, [ebp + ebp*2]
mov edi, dword [esp + esi*4 + 0xcc]
mov edx, dword [esp + esi*4 + 0xd0]
mov ebx, dword [esp + esi*4 + 0xd4]
dec ebp
cmp ebp, 0x10
jb 0x5160b0
jmp 0x516abc
mov ebp, dword [esp + 0x198]
cmp eax, ebp
jg 0x5168c1
mov esi, eax
mov edi, dword [esp + 0x190]
mov edx, dword [esp + 0xcc]
mov ebx, dword [esp + 0xd0]
cmp ebx, eax
jge 0x5168ba
mov dword [esp + 0x54], ebp
mov dword [esp + 0xc8], edi
mov dword [esp + 0x48], eax
cmp edx, edi
je 0x516225
mov dword [esp], edi
mov dword [esp + 4], edx
shl ebx, 2
mov dword [esp + 8], ebx
call fcn.0045b690
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x1b8]
cmp edx, ebx
jl 0x51684a
mov eax, ebx
mov ecx, dword [esp + 0xc0]
mov ebp, dword [esp + 0x1ac]
lea esi, [ebp - 1]
mov dword [esp + 0x70], esi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x198], eax
mov dword [esp + 0x94], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x194], ecx
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x9c]
jmp 0x5165dd
mov dword [esp + 0x60], edx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0xc8], eax
mov edi, dword [esp + 0x64]
shr edi, 0x1c
lea edi, [edi + edi*2]
mov edx, dword [esp + edi*4 + 0xcc]
mov dword [esp + 0xb8], edx
mov edx, dword [esp + edi*4 + 0xd0]
mov edi, dword [esp + edi*4 + 0xd4]
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x14], ebx
mov ebp, dword [esp + 0xb8]
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edi
mov edx, dword [esp + 0x1b4]
mov dword [esp + 0x24], edx
mov ebp, dword [esp + 0x1b8]
mov dword [esp + 0x28], ebp
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], ebp
call fcn.0050f840
mov eax, dword [esp + 0x6c]
add eax, 4
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x64]
shl ebp, 4
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x68]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x198], ebx
mov dword [esp + 0x194], edx
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x5c]
mov eax, dword [esp + 0x1b8]
mov esi, dword [esp + 0xc8]
mov dword [esp + 0xc8], ecx
mov ecx, esi
mov esi, dword [esp + 0x84]
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x6c]
cmp ebp, 0x20
jge 0x5165d1
mov edi, dword [esp + 0x70]
cmp edi, esi
je 0x5165ab
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x194]
mov dword [esp + 0x10], edx
mov ebx, dword [esp + 0x198]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], ebx
mov ebp, dword [esp + 0x1b4]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], eax
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], eax
call fcn.0050f840
mov eax, dword [esp + 0x38]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x60], edx
mov ebx, dword [esp + 0xc8]
mov dword [esp], ebx
mov ebx, dword [esp + 0x194]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x198]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x1b4]
mov dword [esp + 0x24], ebx
mov ebp, dword [esp + 0x1b8]
mov dword [esp + 0x28], ebp
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], ebp
call fcn.0050f840
mov eax, dword [esp + 0x38]
mov dword [esp + 0x190], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x194], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x198], edx
mov ebx, dword [esp + 0xb0]
mov dword [esp], ebx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x1b4]
mov dword [esp + 0x24], ebx
mov ebp, dword [esp + 0x1b8]
mov dword [esp + 0x28], ebp
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], ebp
call fcn.0050f840
mov eax, dword [esp + 0x38]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x60], edx
mov ebx, dword [esp + 0x190]
mov dword [esp], ebx
mov ebx, dword [esp + 0x194]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x198]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x1b4]
mov dword [esp + 0x24], ebx
mov ebp, dword [esp + 0x1b8]
mov dword [esp + 0x28], ebp
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x2c], esi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], ebp
call fcn.0050f840
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0xb0]
jmp 0x51628a
test ebp, ebp
jne 0x516399
mov eax, dword [esp + 0xc8]
mov ebp, edx
mov esi, ecx
mov edx, dword [esp + 0x198]
mov ecx, dword [esp + 0x194]
jmp 0x51628a
dec esi
mov ebp, dword [esp + 0x70]
mov ebp, dword [esp + 0x1ac]
test esi, esi
jl 0x516614
cmp esi, ebp
jae 0x516ab3
mov dword [esp + 0x84], esi
mov ebp, dword [esp + 0x1a8]
mov ebp, dword [ebp + esi*4]
mov dword [esp + 0x8c], eax
xor eax, eax
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x8c]
jmp 0x51637c
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x194]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x198]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0x1b4]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x1bc]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], eax
call fcn.0050f840
mov eax, dword [esp + 0x38]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x60], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x1b4]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x1b8]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x14], esi
call fcn.0050f4e0
mov eax, dword [esp + 0x18]
test eax, eax
jge 0x516715
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0xb0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0050ed70
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1c4], ecx
mov dword [esp + 0x1c8], edx
add esp, 0x18c
ret
mov eax, dword [esp + 0xb0]
mov dword [esp], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x60]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x1bc]
mov dword [esp + 0x20], edx
call fcn.0050f1e0
mov eax, dword [esp + 0x24]
mov dword [esp + 0xb0], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x1b4]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x1b8]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0x1bc]
mov dword [esp + 0x14], esi
call fcn.0050f4e0
mov eax, dword [esp + 0x18]
test eax, eax
jge 0x5167c9
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0xb0]
jmp 0x5166dd
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1bc]
mov dword [esp + 0x2c], eax
call fcn.00511ff0
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
jmp 0x5166dd
cmp ebx, 1
jne 0x516887
lea eax, [0x633500]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00442930
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x1b8]
mov edx, 1
mov ebx, 1
jmp 0x516241
lea eax, [0x633500]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea eax, [ebx + 4]
mov dword [esp + 0x50], eax
mov dword [esp + 8], eax
call fcn.00442930
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x1b8]
mov edx, dword [esp + 0x50]
mov ebx, eax
jmp 0x516241
mov ebx, eax
jmp 0x5161ff
cmp eax, 1
jne 0x516910
lea eax, [0x633500]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00442930
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1bc]
mov ebx, dword [esp + 0x1b4]
mov esi, dword [esp + 0x1b8]
mov eax, 1
mov ebp, 1
jmp 0x5161e9
lea ecx, [0x633500]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [eax + 4]
mov dword [esp + 0x54], edx
mov dword [esp + 8], edx
call fcn.00442930
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x1bc]
mov ebx, dword [esp + 0x1b4]
mov esi, dword [esp + 0x1b8]
mov eax, esi
mov ebp, dword [esp + 0x54]
jmp 0x5161e9
mov eax, ebx
jmp 0x515ea5
mov dword [esp + 0x7c], eax
mov dword [esp + 0xb4], ecx
cmp ebx, 1
jne 0x5169af
lea eax, [0x633500]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00442930
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xb4]
mov ebp, dword [esp + 0x1b8]
mov ebx, 1
mov edx, 1
jmp 0x515e9d
lea eax, [0x633500]
mov dword [esp], eax
mov dword [esp + 4], ebx
lea ecx, [ebx + 4]
mov dword [esp + 0x58], ecx
mov dword [esp + 8], ecx
call fcn.00442930
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0xb4]
mov ebp, dword [esp + 0x1b8]
mov ebx, ebp
mov edx, dword [esp + 0x58]
jmp 0x515e9d
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0xac]
mov esi, eax
mov eax, edx
mov edx, ecx
mov ecx, esi
jmp 0x515ede
lea ebx, [0x633500]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call fcn.004427e0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1b8]
mov edx, ecx
mov ebx, edx
jmp 0x515d0f
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x19c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x1bc]
mov dword [esp + 0x2c], edx
call fcn.00511ff0
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x1b8]
jmp 0x515d07
mov eax, esi
mov ecx, ebp
call fcn.0045ad60
mov eax, ebp
mov ecx, 0x10
call fcn.0045ad60
mov eax, ebp
mov ecx, 0x10
call fcn.0045ad60
xor eax, eax
call fcn.0045ad60
nop
call fcn.00459790
jmp fcn.00515cc0