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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xcc
mov ecx, 4
push ebx
push esi
push edi
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x20]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], edx
mov eax, edx
lea edi, [0x59776c]
mov esi, dword [ebp + 0x1c]
call fcn.00534b34
lea edx, [0x59776c]
mov eax, 0x20
call fcn.00534c4d
push 4
push edx
call fcn.0050b67a
xor eax, eax
mov esi, dword [0x59776c]
cmp esi, 0x4c4c494e
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x2c], 2
lea ebx, [0x5976cc]
setne al
add edi, 8
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x30], edi
mov edi, dword [ebp - 0x30]
lea ecx, [0x5977bc]
lea eax, [0x5977b8]
lea esi, [ebp - 4]
mov edx, dword [edi]
mov dword [ebp - 4], edx
sub esp, 4
push ecx
push eax
push esi
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0050d0c4
mov esi, dword [0x5977b8]
mov eax, dword [0x5977bc]
shl esi, 2
lea edx, [ebx + 0x10]
add esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
lea ecx, [0x57cc48]
push edx
add esi, 0xfffffffc
push 2
shl eax, 2
push ecx
lea edi, [edi + eax - 4]
push edi
push esi
call fcn.0050dc90
lea eax, [0x57cc44]
push ebx
push 2
push eax
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 8]
lea edx, [0x57cc40]
push eax
push 2
push edx
push edi
push esi
call fcn.0050dc90
lea edx, [ebx + 0x18]
mov eax, dword [ebp - 0x24]
push edx
push eax
push dword [ebp + 0x14]
push edi
push esi
call fcn.0050dc90
add esp, 4
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x20], 0
je 0x522516
sub esp, 4
lea edx, [ebx + 0x60]
push edx
push eax
push dword [ebp + 0x1c]
push edi
push esi
call fcn.0050dc90
add esp, 4
lea eax, [ebx + 0x78]
sub esp, 4
lea edx, [0x57cc38]
push eax
push 6
push edx
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 0x70]
lea edx, [0x57cc30]
push eax
push 6
push edx
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 0x68]
lea edx, [0x57cc28]
push eax
push 6
push edx
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 0x58]
lea edx, [0x57cc20]
push eax
push 5
push edx
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 0x98]
lea edx, [0x57cc18]
push eax
push 4
push edx
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 0x90]
lea edx, [0x57cc10]
push eax
push 4
push edx
push edi
push esi
call fcn.0050dc90
lea eax, [ebx + 0x88]
lea edx, [0x57cc08]
push eax
push 4
push edx
push edi
push esi
call fcn.0050dc90
add esp, 4
mov edi, dword [0x5977b8]
add edi, dword [ebx + 0x18]
mov esi, dword [0x5977b8]
mov eax, dword [0x5977b8]
mov edx, dword [0x5977b8]
dec edi
add esi, dword [ebx + 0x60]
mov ecx, dword [0x5977b8]
mov dword [ebx + 0x18], edi
dec esi
add eax, dword [ebx + 0x78]
mov edi, dword [0x5977b8]
mov dword [ebx + 0x60], esi
dec eax
add edx, dword [ebx + 0x70]
mov esi, dword [0x5977b8]
mov dword [ebx + 0x78], eax
dec edx
add ecx, dword [ebx + 0x68]
mov eax, dword [0x5977b8]
mov dword [ebx + 0x70], edx
dec ecx
add edi, dword [ebx + 0x98]
mov edx, dword [ebp - 0x30]
mov dword [ebx + 0x68], ecx
dec edi
add esi, dword [ebx + 0x90]
mov edx, dword [edx + 4]
mov ecx, dword [ebp - 0x30]
dec esi
add eax, dword [ebx + 0x88]
mov dword [ebx + 0x98], edi
mov dword [ebx + 0x90], esi
dec eax
mov dword [ebx + 0x48], edx
mov dword [ebx + 0x88], eax
mov ecx, dword [ecx + 8]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x30]
mov dword [ebx + 0x40], ecx
mov edi, dword [edi + 0xc]
mov esi, dword [esi + 0x10]
mov eax, dword [eax + 0x14]
mov edx, dword [edx + 0x18]
mov ecx, dword [ebp - 0x30]
mov dword [ebx + 0x38], edi
mov dword [ebx + 0x30], esi
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x20], edx
add ecx, 0x1c
mov edi, dword [ebp - 0x2c]
add ebx, 4
dec edi
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], edi
test edi, edi
jg 0x52245a
sub esp, 4
lea eax, [0x5977bc]
lea edx, [0x5977b8]
lea ecx, [0x57cc04]
push eax
push edx
push ecx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0050d0c4
mov edi, dword [ebp + 0x10]
mov edi, dword [edi + 0x44]
shl edi, 2
add edi, dword [ebp + 0xc]
mov ebx, dword [edi + 4]
mov esi, dword [edi]
mov dword [ebp - 0x28], ebx
mov ebx, dword [edi + 0xc]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x30], ebx
mov eax, dword [edi + 0x10]
mov esi, dword [edi + 8]
mov edx, dword [edi + 0x14]
mov ebx, dword [edi + 0x24]
mov ecx, dword [edi + 0x30]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x40], ecx
mov eax, dword [edi + 0x34]
mov esi, dword [edi + 0x28]
mov ebx, dword [edi + 0x2c]
mov edx, dword [edi + 0x38]
lea ecx, [0x5977a4]
mov dword [ebp - 0x44], eax
mov edi, dword [edi + 0x3c]
lea eax, [0x57cbfc]
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x4c], edi
push ecx
push 6
push eax
lea edi, [0x5977c0]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0050dc90
lea eax, [0x5977a0]
lea edx, [0x57cbf4]
push eax
push 6
push edx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0050dc90
lea eax, [0x59779c]
lea edx, [0x57cbec]
push eax
push 6
push edx
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0050dc90
add esp, 4
mov eax, dword [ebp - 0x2c]
shl eax, 2
mov edx, dword [ebp - 0x30]
add eax, dword [ebp + 0xc]
lea ecx, [0x5977e0]
add eax, 0xfffffffc
shl edx, 2
mov dword [ebp - 0x50], eax
add edx, dword [ebp + 0xc]
lea eax, [0x597770]
add edx, 0xfffffffc
mov dword [ebp - 0x54], edx
lea edx, [0x597774]
push ecx
push eax
lea ecx, [0x5977c0]
push edx
lea eax, [0x5977a8]
lea edx, [0x59774c]
push ecx
lea ecx, [0x59771c]
push eax
push edx
lea eax, [ebp - 0x28]
lea edx, [ebp - 0x24]
push ecx
lea ecx, [0x5976d4]
push eax
push edx
lea eax, [0x5976cc]
lea edx, [0x5976dc]
push dword [ebp - 0x54]
push dword [ebp - 0x50]
push ecx
push eax
lea ecx, [0x5976ec]
push edx
lea eax, [0x5976f4]
lea edx, [0x5976fc]
push ecx
lea ecx, [0x597704]
push eax
push edx
lea eax, [0x59770c]
lea edx, [0x597714]
push ecx
push eax
push edx
call fcn.00533d92
shl esi, 2
mov edx, dword [0x5977a4]
add esi, dword [ebp + 8]
mov dword [ebp - 0x64], edi
lea edi, [0x5976cc]
lea eax, [0x5977e0]
add esi, 0xfffffffc
mov dword [ebp - 0x68], edi
shl ebx, 2
mov dword [ebp - 0x74], esi
add ebx, dword [ebp + 8]
mov esi, dword [ebp - 0x3c]
mov dword [ebp - 0x58], 2
mov dword [ebp - 0x6c], eax
add ebx, 0xfffffffc
shl esi, 2
mov dword [ebp - 0x78], ebx
add esi, dword [ebp + 8]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x5c], 1
add esi, 0xfffffffc
shl edx, 2
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x60], 0xffffffff
lea ebx, [ebx + edx - 4]
mov dword [ebp - 0x70], 2
mov dword [ebp - 0x7c], ebx
mov ebx, dword [ebp - 0x68]
lea ecx, [0x5977b0]
lea eax, [0x5977b4]
lea ebx, [ebx + 0x50]
mov dword [ebp - 0x80], ebx
sub esp, 4
push ecx
push eax
mov edx, dword [ebp - 0x68]
add edx, 0x68
push edx
mov ecx, dword [ebp - 0x68]
add ecx, 0x70
push ecx
mov eax, dword [ebp - 0x68]
add eax, 0x78
push eax
mov edx, dword [ebp - 0x68]
add edx, 0x80
push edx
push dword [ebp - 0x80]
call fcn.00534150
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x68]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x60]
add esi, 0x48
mov eax, dword [ebp - 0x68]
add ecx, 0x38
mov dword [ebp - 0x88], edx
add eax, 0x28
mov dword [ebp - 0x90], ecx
lea edx, [0x597784]
mov dword [ebp - 0x94], eax
lea ecx, [0x597788]
lea eax, [0x59778c]
mov dword [ebp - 0x8c], esi
push edx
push ecx
push eax
push dword [ebp - 0x6c]
push dword [ebp - 0x94]
push dword [ebp - 0x90]
push dword [ebp - 0x8c]
call fcn.0051a508
add esp, 4
xor eax, eax
cmp dword [ebp - 0x5c], 1
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x30]
setne al
mov dword [ebp - 0x98], eax
test eax, eax
jne 0x522956
mov dword [ebp - 0x9c], ecx
mov ecx, dword [ebp - 0x30]
add edx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x28]
mov edi, edx
mov ebx, ecx
jmp 0x522970
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x30]
add eax, dword [ebp - 0x24]
add ecx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 0x9c], eax
mov esi, ecx
mov eax, dword [0x5977b4]
mov edx, dword [ebp - 0x68]
shl eax, 2
mov ecx, dword [ebp - 0x68]
add eax, dword [ebp + 8]
lea edx, [edx + 0x10]
mov dword [ebp - 0xa0], edx
mov edx, dword [0x5977b0]
add eax, 0xfffffffc
add ecx, 8
shl edx, 2
mov dword [ebp - 0xa4], ecx
add edx, dword [ebp + 8]
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0x68]
mov ecx, dword [ecx + 0x58]
add edx, 0xfffffffc
shl ecx, 2
mov dword [ebp - 0xac], edx
add ecx, dword [ebp + 8]
lea edx, [ebp - 0x88]
add ecx, 0xfffffffc
cmp dword [ebp - 0x20], 0
mov dword [ebp - 0xb0], ecx
lea ecx, [ebp - 0x84]
je 0x522a89
mov eax, dword [eax + 0x60]
push edx
push ecx
lea edx, [0x597784]
lea ecx, [0x597788]
push dword [ebp - 0x6c]
push edx
push ecx
lea edx, [0x59778c]
lea ecx, [ebp - 0x28]
push edx
push ecx
mov edx, dword [ebp + 0xc]
lea edx, [edx + ebx*4 - 4]
push edx
mov ecx, dword [ebp + 0xc]
lea edx, [ebp - 0x24]
lea ecx, [ecx + esi*4 - 4]
push ecx
push edx
mov ecx, dword [ebp + 0xc]
lea ecx, [ecx + edi*4 - 4]
push ecx
mov edx, dword [ebp - 0x9c]
shl edx, 2
lea ecx, [0x57cbe8]
add edx, dword [ebp + 0xc]
add edx, 0xfffffffc
push edx
lea edx, [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x78]
push dword [ebp - 0x74]
push dword [ebp - 0xb0]
push dword [ebp - 0xac]
push dword [ebp - 0xa8]
push ecx
lea ecx, [ebp - 0x34]
push edx
push ecx
mov edx, dword [0x5977a0]
shl edx, 2
add edx, dword [ebp + 8]
add edx, 0xfffffffc
shl eax, 2
push edx
push dword [ebp - 0xa4]
push dword [ebp - 0x68]
push dword [ebp - 0xa0]
add eax, dword [ebp + 8]
add eax, 0xfffffffc
push eax
call fcn.005186b0
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0xb8], ecx
mov ecx, dword [ebp - 0x7c]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0xc0], ecx
shl eax, 2
mov ecx, dword [ebp - 0xac]
add eax, dword [ebp + 8]
mov dword [ebp - 0xc8], ecx
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x78]
add eax, 0xfffffffc
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xcc], eax
lea eax, [ebp - 0x88]
shl ebx, 2
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [0x597784]
push dword [ebp - 0x6c]
push eax
lea eax, [0x597788]
push eax
lea eax, [0x59778c]
push eax
lea eax, [ebp - 0x28]
push eax
add ebx, dword [ebp + 0xc]
lea eax, [ebp - 0x24]
add ebx, 0xfffffffc
shl esi, 2
push ebx
add esi, dword [ebp + 0xc]
add esi, 0xfffffffc
shl edi, 2
push esi
push eax
add edi, dword [ebp + 0xc]
lea esi, [0x57cbe8]
lea eax, [ebp - 0x38]
add edi, 0xfffffffc
push edi
mov ebx, dword [ebp - 0x9c]
shl ebx, 2
lea edi, [ebp - 0x34]
add ebx, dword [ebp + 0xc]
add ebx, 0xfffffffc
push ebx
push edx
push ecx
push dword [ebp - 0xcc]
push dword [ebp - 0xb0]
push dword [ebp - 0xc8]
push dword [ebp - 0xc4]
push esi
push eax
push edi
push dword [ebp - 0xc0]
push dword [ebp - 0xbc]
push dword [ebp - 0x68]
push dword [ebp - 0xb8]
push dword [ebp - 0xb4]
call fcn.005186b0
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x30]
cmp dword [ebp - 0x98], 0
mov dword [ebp - 0x9c], ebx
jne 0x522bb6
add edi, dword [ebp - 0x28]
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0xb0], esi
mov dword [ebp - 0xb8], edi
jmp 0x522bcb
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x30]
add eax, dword [ebp - 0x28]
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xc0], 1
mov dword [ebp - 0xc4], 2
mov dword [ebp - 0xc8], 1
cmp dword [ebp - 0xc8], 1
mov edx, dword [ebp - 0x64]
jne 0x522c0d
mov ecx, 0xb
mov eax, 0
mov edi, dword [edx]
jmp 0x522c1b
mov edi, dword [ebp - 0x64]
mov ecx, 0xc
mov eax, dword [ebp - 0x34]
mov edi, dword [edi + 8]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x1c], 1
sub esp, 4
lea edx, [0x597784]
lea edi, [0x597788]
lea eax, [0x59778c]
lea ecx, [0x597778]
push edx
push edi
lea edx, [0x59777c]
lea edi, [0x597780]
push eax
push ecx
push edx
push edi
push dword [ebp - 0x6c]
mov eax, dword [ebp - 0x68]
lea edi, [ebp - 0x10]
add eax, 0x20
push eax
push dword [ebp - 0x94]
mov ecx, dword [ebp - 0x68]
add ecx, 0x30
push ecx
push dword [ebp - 0x90]
mov edx, dword [ebp - 0x68]
add edx, 0x40
push edx
push dword [ebp - 0x8c]
push dword [ebp - 0x80]
push edi
call fcn.0051b3cc
mov edi, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xcc], edi
lea edi, [ebp - 0x14]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0xa8]
mov esi, dword [ebp - 0xac]
mov ebx, dword [ebp - 0x78]
push edi
lea edi, [ebp - 0x88]
push edi
lea edi, [ebp - 0xc0]
push edi
lea edi, [ebp - 0xbc]
push edi
mov edi, dword [ebp - 0x6c]
add edi, 0x20
push edi
mov edi, dword [ebp - 0x6c]
add edi, 0x14
push edi
mov edi, dword [ebp - 0x6c]
add edi, 8
push edi
mov edi, dword [ebp - 0x6c]
add edi, 0x1c
push edi
mov edi, dword [ebp - 0x6c]
add edi, 0x10
push edi
mov edi, dword [ebp - 0x6c]
add edi, 4
push edi
lea edi, [ebp - 0x84]
push edi
lea edi, [ebp - 0x1c]
push edi
lea edi, [ebp - 0x18]
push edi
lea edi, [0x597784]
push edi
lea edi, [0x597788]
push edi
lea edi, [0x59778c]
push edi
lea edi, [0x597778]
push edi
lea edi, [0x59777c]
push edi
lea edi, [0x597780]
push edi
lea edi, [ebp - 0x9c]
push edi
mov edi, dword [ebp - 0xb8]
shl edi, 2
add edi, dword [ebp + 0xc]
add edi, 0xfffffffc
push edi
mov edi, dword [ebp - 0xb0]
shl edi, 2
add edi, dword [ebp + 0xc]
add edi, 0xfffffffc
push edi
push ebx
lea edi, [0x57cbe8]
push esi
lea ebx, [ebp - 0x38]
lea esi, [ebp - 0x34]
push ecx
push edi
push ebx
push esi
push edx
push eax
push dword [ebp - 0x68]
push dword [ebp - 0xcc]
push dword [ebp - 0xb4]
call fcn.0051a570
add esp, 4
mov edi, dword [ebp - 0xc8]
mov esi, dword [ebp - 0xc4]
inc edi
dec esi
mov dword [ebp - 0xc8], edi
mov dword [ebp - 0xc4], esi
test esi, esi
mov edx, dword [ebp - 0x24]
jg 0x522bf3
cmp dword [ebp - 0x98], 0
mov dword [ebp - 0x9c], edx
mov ebx, dword [ebp - 0x2c]
jne 0x522dc7
add ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], ebx
jmp 0x522dd6
mov esi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
add esi, dword [ebp - 0x24]
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], esi
xor ecx, ecx
mov dword [ebp - 0xbc], 1
mov dword [ebp - 0x98], 2
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xb0], 1
cmp dword [ebp - 0xb0], 1
mov edx, dword [ebp - 0x64]
jne 0x522e17
mov eax, 0x15
mov ecx, 0
mov ebx, dword [edx + 4]
jmp 0x522e25
mov ebx, dword [ebp - 0x64]
mov eax, 0x16
mov ecx, dword [ebp - 0x38]
mov ebx, dword [ebx + 0xc]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], 1
sub esp, 4
lea ebx, [0x597784]
lea ecx, [0x597788]
lea edx, [0x59778c]
lea eax, [0x597778]
push ebx
push ecx
lea ebx, [0x59777c]
lea ecx, [0x597780]
push edx
push eax
push ebx
push ecx
push dword [ebp - 0x6c]
mov edx, dword [ebp - 0x68]
lea ecx, [ebp - 0x10]
add edx, 0x20
push edx
push dword [ebp - 0x94]
mov eax, dword [ebp - 0x68]
add eax, 0x30
push eax
push dword [ebp - 0x90]
mov ebx, dword [ebp - 0x68]
add ebx, 0x40
push ebx
push dword [ebp - 0x8c]
push dword [ebp - 0x80]
push ecx
call fcn.0051b3cc
mov ebx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xb8], ebx
lea ebx, [ebp - 0x14]
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0xac]
mov edi, dword [ebp - 0xa8]
mov esi, dword [ebp - 0x74]
push ebx
lea ebx, [ebp - 0x88]
push ebx
lea ebx, [ebp - 0xc0]
push ebx
lea ebx, [ebp - 0xbc]
push ebx
mov ebx, dword [ebp - 0x6c]
add ebx, 0x20
push ebx
mov ebx, dword [ebp - 0x6c]
add ebx, 0x14
push ebx
mov ebx, dword [ebp - 0x6c]
add ebx, 8
push ebx
mov ebx, dword [ebp - 0x6c]
add ebx, 0x18
push ebx
mov ebx, dword [ebp - 0x6c]
add ebx, 0xc
push ebx
lea ebx, [ebp - 0x84]
push dword [ebp - 0x6c]
push ebx
lea ebx, [ebp - 0x1c]
push ebx
lea ebx, [ebp - 0x18]
push ebx
lea ebx, [0x597784]
push ebx
lea ebx, [0x597788]
push ebx
lea ebx, [0x59778c]
push ebx
lea ebx, [0x597778]
push ebx
lea ebx, [0x59777c]
push ebx
lea ebx, [0x597780]
push ebx
lea ebx, [ebp - 0x9c]
push ebx
mov ebx, dword [ebp - 0xc]
shl ebx, 2
add ebx, dword [ebp + 0xc]
add ebx, 0xfffffffc
push ebx
mov ebx, dword [ebp - 8]
shl ebx, 2
add ebx, dword [ebp + 0xc]
add ebx, 0xfffffffc
push ebx
push esi
lea ebx, [0x57cbe8]
push edi
lea esi, [ebp - 0x38]
lea edi, [ebp - 0x34]
push ecx
push ebx
push esi
push edi
push edx
push eax
push dword [ebp - 0x68]
push dword [ebp - 0xb8]
push dword [ebp - 0xb4]
call fcn.0051a570
add esp, 4
mov ebx, dword [ebp - 0xb0]
mov edi, dword [ebp - 0x98]
inc ebx
dec edi
mov dword [ebp - 0xb0], ebx
mov dword [ebp - 0x98], edi
test edi, edi
mov edx, dword [ebp - 0x5c]
jg 0x522dfc
inc edx
mov ebx, dword [ebp - 0x60]
mov edi, dword [ebp - 0x64]
mov dword [ebp - 0x5c], edx
add ebx, 2
mov eax, dword [ebp - 0x68]
add edi, 0x10
mov edx, dword [ebp - 0x6c]
add eax, 4
mov ecx, dword [ebp - 0x70]
add edx, 0x24
mov esi, dword [ebp - 0x58]
inc ecx
dec esi
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x58], esi
test esi, esi
jg 0x522878
lea eax, [0x57cbe8]
lea edx, [ebp - 0x38]
lea ecx, [ebp - 0x34]
lea ebx, [0x5977c0]
push eax
push edx
push ecx
push ebx
push dword [ebp - 0x78]
push dword [ebp - 0x74]
push dword [ebp - 0x3c]
push dword [ebp - 0x7c]
call fcn.00529438
mov esi, dword [ebp - 0x4c]
mov edi, dword [0x59779c]
shl esi, 2
mov ebx, dword [ebp + 0x10]
add esi, dword [ebp + 8]
lea eax, [ebp - 0x20]
lea edx, [0x597770]
lea ecx, [0x597774]
add esi, 0xfffffffc
shl edi, 2
add edi, dword [ebp + 8]
add edi, 0xfffffffc
add ebx, 4
push ebx
push eax
lea ebx, [ebp - 0x38]
lea eax, [ebp - 0x34]
push edx
push ecx
push ebx
push eax
push edi
mov edx, dword [0x5977a0]
shl edx, 2
add edx, dword [ebp + 8]
add edx, 0xfffffffc
push edx
mov ecx, dword [ebp - 0x40]
shl ecx, 2
add ecx, dword [ebp + 8]
add ecx, 0xfffffffc
push ecx
push esi
mov ebx, dword [ebp - 0x48]
shl ebx, 2
add ebx, dword [ebp + 8]
add ebx, 0xfffffffc
push ebx
mov eax, dword [ebp - 0x44]
shl eax, 2
lea ebx, [0x57cbe8]
add eax, dword [ebp + 8]
add eax, 0xfffffffc
push eax
push dword [ebp - 0x3c]
push dword [ebp - 0x7c]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00515110
lea eax, [ebp - 0x38]
lea edx, [ebp - 0x34]
push ebx
lea ebx, [ebp - 0xc]
push eax
push edx
push dword [ebp - 0x78]
push dword [ebp - 0x74]
push edi
call fcn.0052cfb3
lea eax, [ebp - 8]
lea edx, [0x597754]
push ebx
lea ecx, [0x59775c]
push eax
lea ebx, [0x597764]
lea eax, [0x59774c]
push edx
push ecx
push ebx
push eax
call fcn.005341dd
sub esp, 4
lea edx, [ebp - 0x20]
lea ecx, [0x597804]
mov ebx, dword [0x5976e4]
mov eax, dword [0x5976e8]
push edx
push ecx
lea edx, [0x5977e0]
lea ecx, [0x5977ac]
push edx
lea edx, [0x5977a8]
push ecx
lea ecx, [0x597750]
push edx
lea edx, [0x59774c]
push ecx
lea ecx, [0x597720]
push edx
lea edx, [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x24]
push esi
push edx
lea esi, [ebp - 0x38]
push ecx
lea edx, [ebp - 0x34]
push dword [ebp - 0x54]
push dword [ebp - 0x50]
push esi
push edx
push dword [ebp - 0x78]
push dword [ebp - 0x74]
push edi
mov ecx, dword [ebp - 0xc]
shl ecx, 2
lea edx, [0x57cbe8]
add ecx, dword [ebp + 8]
lea edi, [0x5976d8]
add ecx, 0xfffffffc
push ecx
mov esi, dword [ebp - 8]
shl esi, 2
lea ecx, [0x5976d0]
add esi, dword [ebp + 8]
add esi, 0xfffffffc
shl eax, 2
push esi
lea esi, [0x5976e0]
push edx
push edi
push ecx
push esi
add eax, dword [ebp + 8]
lea edx, [0x5976d4]
lea edi, [0x5976cc]
lea ecx, [0x5976dc]
add eax, 0xfffffffc
shl ebx, 2
push eax
push edx
push edi
push ecx
add ebx, dword [ebp + 8]
add ebx, 0xfffffffc
push ebx
call fcn.00523fc8
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c