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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push esi
push edi
push ebx
sub esp, 0x274
mov edi, dword [0x5ecf7c]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x40]
mov dword [esp], 0
mov dword [esp + 0x28], edi
mov dword [esp + 0x40], edi
lea edi, [esp]
push 0x20
push 0x5da9bc
push eax
push 0x5c19c0
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
mov eax, dword [0x5ecf80]
lea edx, [esp + 0x64]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x64], eax
push edx
push 0x5c19c8
push edi
call fcn.00547300
mov esi, dword [0x5ecf88]
lea eax, [esp + 0x78]
mov dword [esp + 0x78], esi
push eax
push 0x5c19d0
push edi
call fcn.00547300
mov ebx, dword [0x5ecf8c]
lea eax, [esp + 0x8c]
mov dword [esp + 0x8c], ebx
push eax
push 0x5c19d8
push edi
call fcn.00547300
mov eax, dword [esp + 0x68]
lea edx, [esp + 0xa0]
mov dword [esp + 0x40], 0
mov dword [esp + 0xa0], eax
push 0x20
push 0x5da9bc
push edx
push 0x5c19e0
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
mov eax, dword [esp + 0x7c]
lea edx, [esp + 0xc4]
mov dword [esp + 0xc4], eax
push edx
push 0x5c19e8
push edi
call fcn.00547300
mov dword [esp + 0xd8], esi
lea eax, [esp + 0xd8]
push eax
push 0x5c19f0
push edi
call fcn.00547300
add esp, 0x74
mov dword [esp + 0x78], ebx
lea eax, [esp + 0x78]
push eax
push 0x5c19f8
push edi
call fcn.00547300
add esp, 0xc
inc esi
lea eax, [esp + 0x20]
mov dword [esp + 0x20], esi
mov esi, 0x5c1a00
push esi
push esi
push 0x5c1a04
push eax
push 0x5c1a08
push 0xa
push 0x5c1ed0
call fcn.0045a880
mov ebx, eax
push esi
push esi
push 0x5c1a04
push 0x5c1a08
push 0x5ecf9c
push 0xa
push 0x5c1edc
call fcn.0045a880
mov esi, eax
push 0x5c1a0c
push 0x5c1a10
push 0x5c1a04
push dword [esp + 0x30]
push 0x5ecf98
push 0xa
push 0x5c1ee8
call fcn.0045a880
add ebx, esi
add ebx, eax
mov dword [0x5ed05c], ebx
call fcn.00460850
mov ebx, eax
call fcn.00460840
sub ebx, eax
mov eax, 0x2aaaaaab
imul ebx
sar edx, 2
sar ebx, 0x1f
sub edx, ebx
mov ecx, dword [0x5ed05c]
cmp edx, ecx
cmovl ecx, edx
add ecx, ecx
mov dword [esp + 0x6c], ecx
mov eax, ecx
mov dword [0x5ed05c], eax
mov edx, dword [0x5ecf88]
xor eax, eax
mov dword [esp + 0x64], edx
test edx, edx
jle 0x472234
mov eax, dword [esp + 0x24]
xor ebx, ebx
mov esi, dword [0x5e18fc]
mov dword [esp + 0x28], ebx
mov edx, dword [eax]
xor eax, eax
mov dword [esp + 0x74], edx
mov dword [esp + 0x34], ebx
cmp dword [esp + 0x6c], 0
js 0x472207
mov dword [esp + 0x2c], ebx
mov edx, dword [esp + 0x5c]
xor ebx, ebx
mov esi, dword [esp + 0x74]
mov dword [esp + 0x80], eax
mov ecx, dword [edx + eax*8 + 4]
mov edx, dword [edx + eax*8]
imul esi, ecx
mov dword [esp + 0x7c], esi
lea edi, [edx + edx]
neg edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], ecx
mov esi, dword [esp + 0x2c]
inc esi
mov edx, dword [esp + 0x5c]
mov ecx, esi
mov dword [esp + 0x88], ebx
mov dword [0x5e18fc], ebx
mov edi, dword [edx + esi*8 + 4]
mov ebx, dword [esp + 0x74]
imul ebx, edi
sub ecx, dword [esp + 0x80]
mov eax, ecx
mov edx, dword [edx + esi*8]
add ebx, edx
sub eax, dword [esp + 0x7c]
add eax, ebx
mov ebx, dword [esp + 0x84]
lea ebx, [ebx + eax*2 + 2]
cmp ebx, dword [esp + 0x6c]
jg 0x4721f2
cmp esi, dword [esp + 0x64]
jl 0x471217
mov dword [esp + 0x2c], esi
mov dword [esp + 0x44], edx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x4c], edi
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edx, esi
inc ecx
mov esi, ecx
shl esi, 4
mov eax, dword [ebp + 0x18]
mov edi, dword [esp + 0x54]
mov dword [esi + eax - 0xc], edi
mov edi, dword [esp + 0x44]
sub edi, dword [esp + 0x30]
mov dword [esi + eax - 8], edi
mov edi, dword [esp + 0x4c]
sub edi, dword [esp + 0x38]
mov dword [esi + eax - 0x10], edx
mov dword [esi + eax - 4], edi
mov eax, dword [esp + 0x3c]
cmp ebx, eax
cmovl ebx, eax
mov eax, ebx
cmp edx, dword [esp + 0x64]
jge 0x47131a
mov eax, edx
cmp dword [esp + 0x6c], 0
js 0x4712db
mov dword [esp + 0x28], ebx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], edx
jmp 0x4711e0
mov edi, dword [esp + 0x5c]
mov esi, dword [edi + edx*8 + 4]
mov dword [esp + 0x38], esi
mov esi, dword [edi + edx*8]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x88]
dec edx
mov dword [esp + 0x3c], esi
mov edi, edx
mov esi, dword [esp + 0x5c]
sub edi, eax
mov dword [esp + 0x54], edi
mov eax, dword [esi + edx*8 + 4]
mov dword [esp + 0x4c], eax
mov eax, dword [esi + edx*8]
mov dword [esp + 0x44], eax
jmp 0x471283
mov dword [esp + 0x34], ecx
lea edi, [esp]
mov edx, ecx
cmp dword [esp + 0x64], 0
mov dword [esp + 0x28], ebx
mov dword [0x5ed044], edx
jle 0x4721de
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x34]
shl ebx, 4
mov eax, dword [0x5e18fc]
mov ecx, dword [edx]
xor edx, edx
add ebx, dword [ebp + 0x18]
mov dword [esp + 0x88], eax
xor eax, eax
mov esi, dword [ebp + 0x14]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x34], ebx
cmp dword [esp + 0x6c], 0
js 0x4721b4
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x7c]
mov ecx, dword [ebp + 0x14]
xor edx, edx
mov esi, dword [esp + 0x74]
mov dword [esp + 0x7c], eax
mov ebx, dword [ecx + eax*8 + 4]
mov ecx, dword [ecx + eax*8]
imul esi, ebx
mov dword [esp + 0x80], esi
lea edi, [ecx + ecx]
neg edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], ebx
mov esi, dword [esp + 0x2c]
inc esi
mov ecx, dword [ebp + 0x14]
mov ebx, esi
mov dword [esp + 0x88], edx
mov dword [0x5e18fc], edx
mov edi, dword [ecx + esi*8 + 4]
mov edx, dword [esp + 0x74]
imul edx, edi
sub ebx, dword [esp + 0x7c]
mov eax, ebx
mov ecx, dword [ecx + esi*8]
add edx, ecx
sub eax, dword [esp + 0x80]
add eax, edx
mov edx, dword [esp + 0x84]
lea edx, [edx + eax*2 + 2]
cmp edx, dword [esp + 0x6c]
jg 0x4721a2
cmp esi, dword [esp + 0x64]
jl 0x4713b4
mov dword [esp + 0x2c], esi
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x44], edx
mov dword [esp + 0x54], edi
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
inc edx
mov ecx, edx
shl ecx, 4
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x5c]
mov dword [ecx + eax - 0xc], edi
mov edi, dword [esp + 0x4c]
sub edi, dword [esp + 0x38]
mov dword [ecx + eax - 8], edi
mov edi, dword [esp + 0x54]
sub edi, dword [esp + 0x3c]
mov dword [ecx + eax - 0x10], ebx
mov dword [ecx + eax - 4], edi
mov eax, dword [esp + 0x44]
cmp esi, eax
cmovl esi, eax
cmp ebx, dword [esp + 0x64]
jge 0x4714b5
mov eax, ebx
cmp dword [esp + 0x6c], 0
js 0x471478
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], edx
jmp 0x47137e
mov edi, dword [ebp + 0x14]
mov ecx, dword [edi + ebx*8 + 4]
mov dword [esp + 0x3c], ecx
mov ecx, dword [edi + ebx*8]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x88]
dec ebx
mov dword [esp + 0x44], ecx
mov edi, ebx
mov ecx, dword [ebp + 0x14]
sub edi, eax
mov dword [esp + 0x5c], edi
mov eax, dword [ecx + ebx*8 + 4]
mov dword [esp + 0x54], eax
mov eax, dword [ecx + ebx*8]
mov dword [esp + 0x4c], eax
jmp 0x471421
mov dword [esp + 0x28], esi
lea edi, [esp]
mov eax, esi
mov dword [0x5ed048], edx
mov dword [0x5e1900], eax
push 0x5c1a08
push 0x5e1900
call fcn.00461870
mov ebx, dword [0x5ed044]
add eax, 2
mov dword [0x5ed05c], eax
lea ecx, [esp + 0x28]
mov eax, dword [0x5ed048]
mov dword [0x5ed04c], ebx
add ebx, eax
mov esi, dword [ebp + 0x18]
mov dword [0x5ed050], eax
lea edx, [ebx*4]
shl ebx, 4
mov dword [esp + 0x28], edx
add ebx, esi
push ecx
push ebx
push esi
call fcn.004616f0
mov edx, dword [0x5ed04c]
xor eax, eax
mov ebx, dword [0x5ed044]
test edx, edx
mov esi, dword [0x5ed048]
mov dword [esp + 0x5c], edx
jle 0x47157e
xor ecx, ecx
lea edx, [ebx + esi]
shl edx, 4
mov dword [esp + 0x44], ebx
add edx, dword [ebp + 0x18]
mov dword [esp + 0x4c], esi
mov ebx, ecx
mov edi, ebx
mov esi, ecx
shl edi, 4
neg esi
inc ebx
mov ecx, dword [edx + edi]
add esi, ecx
mov dword [edx + edi + 0xc], 0
mov edi, dword [edx + edi + 8]
lea esi, [esi + edi + 1]
cmp esi, eax
jl 0x47156d
mov eax, esi
cmp ebx, dword [esp + 0x5c]
jb 0x471548
mov ebx, dword [esp + 0x44]
lea edi, [esp]
mov esi, dword [esp + 0x4c]
mov edx, dword [0x5ed050]
test edx, edx
mov dword [esp + 0x54], edx
jle 0x472198
xor ecx, ecx
lea edx, [ebx + esi]
add edx, dword [esp + 0x5c]
shl edx, 4
mov dword [esp + 0x44], ebx
add edx, dword [ebp + 0x18]
mov dword [esp + 0x4c], esi
mov ebx, ecx
mov edi, ebx
mov esi, ecx
shl edi, 4
neg esi
inc ebx
mov ecx, dword [edx + edi]
add esi, ecx
mov dword [edx + edi + 0xc], 0
mov edi, dword [edx + edi + 8]
lea esi, [esi + edi + 1]
cmp esi, eax
jl 0x4715ce
mov eax, esi
cmp ebx, dword [esp + 0x54]
jb 0x4715a9
mov ebx, dword [esp + 0x44]
lea edi, [esp]
mov esi, dword [esp + 0x4c]
mov dword [0x5e1900], eax
mov dword [esp], 0
lea eax, [eax + eax + 2]
mov dword [esp + 0x2c], eax
lea edx, [eax*4]
mov dword [esp + 0x38], edx
lea ecx, [esp + 0x80]
mov dword [esp + 0x80], edx
push 0x20
push 0x5da7b8
push ecx
push 0x5c1a14
push 0x8384ff00
push 6
push edi
mov dword [0x5ed064], eax
call fcn.00545ab0
mov eax, dword [esp + 0x48]
mov edx, eax
sar edx, 7
lea ecx, [esp + 0xa4]
shr edx, 0x18
add edx, eax
sar edx, 8
mov dword [esp + 0x50], edx
mov dword [esp + 0xa4], edx
push ecx
push 0x5c1a1c
push edi
call fcn.00547300
mov eax, dword [esp + 0x84]
lea edx, [esp + 0xb8]
mov dword [esp + 0xb8], eax
push edx
push 0x5c1a24
push edi
call fcn.00547300
mov eax, dword [esp + 0x88]
lea edx, [esp + 0xcc]
mov dword [esp + 0xcc], eax
push edx
push 0x5c1a2c
push edi
call fcn.00547300
mov eax, dword [0x5ed05c]
lea ecx, [esp + 0xe0]
mov dword [esp + 0x7c], eax
lea edx, [eax*4]
mov dword [esp + 0x70], edx
mov dword [esp + 0xe0], edx
push ecx
push 0x5c1a34
push edi
call fcn.00547300
mov eax, dword [esp + 0x88]
mov edx, eax
sar edx, 7
lea ecx, [esp + 0xf4]
shr edx, 0x18
add edx, eax
sar edx, 8
mov dword [esp + 0x78], edx
mov dword [esp + 0xf4], edx
push ecx
push 0x5c1a3c
push edi
call fcn.00547300
mov dword [esp + 0x108], ebx
lea eax, [esp + 0x108]
push eax
push 0x5c1a44
push edi
call fcn.00547300
mov dword [esp + 0x11c], esi
lea eax, [esp + 0x11c]
push eax
push 0x5c1a4c
push edi
call fcn.00547300
add esp, 0x70
mov eax, dword [esp + 0x38]
lea edx, [esp + 0xc0]
mov dword [esp], 0
mov dword [esp + 0xc0], eax
push 0x20
push 0x5da7b8
push edx
push 0x5c1a54
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x54]
mov dword [esp + 0x54], eax
push edx
push 0x5c1a5c
push edi
call fcn.00547300
mov eax, dword [esp + 0x84]
lea edx, [esp + 0xf0]
mov dword [esp + 0xf0], eax
push edx
push 0x5c1a64
push edi
call fcn.00547300
mov eax, dword [esp + 0x88]
lea edx, [esp + 0x104]
mov dword [esp + 0x104], eax
push edx
push 0x5c1a6c
push edi
call fcn.00547300
mov eax, dword [esp + 0x70]
lea edx, [esp + 0x118]
mov dword [esp + 0x118], eax
push edx
push 0x5c1a74
push edi
call fcn.00547300
mov eax, dword [esp + 0x78]
lea edx, [esp + 0x7c]
mov dword [esp + 0x7c], eax
push edx
push 0x5c1a7c
push edi
call fcn.00547300
mov dword [esp + 0x138], ebx
lea eax, [esp + 0x138]
push eax
push 0x5c1a84
push edi
call fcn.00547300
mov dword [esp + 0x14c], esi
lea eax, [esp + 0x14c]
push eax
push 0x5c1a8c
push edi
call fcn.00547300
add esp, 0x70
xor eax, eax
mov dword [esp], eax
push 0x20
push 0x5da734
push eax
push 0x5c1a94
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
xor eax, eax
mov dword [esp + 0x1c], eax
push 0x20
push 0x5da734
push eax
push 0x5c1a98
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x38
cmp dword [esp + 0x5c], 0
jle 0x471a7c
xor edx, edx
lea ecx, [ebx + esi]
shl ecx, 4
mov eax, 1
add ecx, dword [ebp + 0x18]
mov dword [esp + 0x44], ebx
mov ebx, eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x4c], esi
mov eax, ebx
shl eax, 4
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0xf0], ebx
mov edx, dword [ecx + eax - 0x10]
mov ecx, dword [ecx + eax - 8]
xor eax, eax
mov dword [esp + 0x3c], edx
mov dword [esp + 0x6c], ecx
mov dword [esp], eax
add edx, ecx
sub edx, esi
mov dword [0x5e18fc], eax
lea edx, [edx + edx + 2]
mov dword [esp + 0x64], edx
push 0x20
push 0x5da598
mov dword [0x5e1900], edx
lea ecx, [esp + 0xf8]
push ecx
push 0x5c1a9c
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
mov dword [esp + 0x114], esi
lea edx, [esp + 0x114]
push edx
push 0x5c1aa4
push edi
call fcn.00547300
mov edx, dword [esp + 0x64]
lea ecx, [esp + 0x128]
sub edx, esi
mov dword [esp + 0x5c], edx
mov dword [esp + 0x128], edx
push ecx
push 0x5c1aac
push edi
call fcn.00547300
mov edx, dword [esp + 0xa0]
lea ecx, [esp + 0x13c]
mov dword [esp + 0x13c], edx
push ecx
push 0x5c1ab4
push edi
call fcn.00547300
mov dword [esp + 0x150], 0
lea edx, [esp + 0x150]
push edx
push 0x5c1abc
push edi
call fcn.00547300
mov edx, dword [esp + 0xb0]
lea ecx, [esp + 0x164]
mov dword [esp + 0x164], edx
push ecx
push 0x5c1ac4
push edi
call fcn.00547300
mov dword [esp + 0x58], 0
mov dword [esp + 0x178], ebx
push 0x20
push 0x5da598
lea edx, [esp + 0x180]
push edx
push 0x5c1acc
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x74
mov dword [esp + 0x128], esi
lea edx, [esp + 0x128]
push edx
push 0x5c1ad4
push edi
call fcn.00547300
mov edx, dword [esp + 0x40]
lea ecx, [esp + 0x13c]
mov dword [esp + 0x13c], edx
push ecx
push 0x5c1adc
push edi
call fcn.00547300
mov edx, dword [esp + 0x84]
lea ecx, [esp + 0x150]
mov dword [esp + 0x150], edx
push ecx
push 0x5c1ae4
push edi
call fcn.00547300
mov dword [esp + 0x164], 0
lea edx, [esp + 0x164]
push edx
push 0x5c1aec
push edi
call fcn.00547300
mov edx, dword [esp + 0x94]
lea ecx, [esp + 0x178]
mov dword [esp + 0x178], edx
push ecx
push 0x5c1af4
push edi
call fcn.00547300
add esp, 0x3c
inc ebx
cmp ebx, dword [esp + 0x5c]
jle 0x47189c
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x4c]
xor eax, eax
mov dword [esp], eax
push 0x20
push 0x5da6b0
push eax
push 0x5c1afc
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
xor eax, eax
mov dword [esp + 0x1c], eax
push 0x20
push 0x5da6b0
push eax
push 0x5c1b00
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x38
cmp dword [esp + 0x54], 0
jle 0x471ccc
xor edx, edx
lea ecx, [ebx + esi]
add ecx, dword [esp + 0x5c]
mov eax, 1
shl ecx, 4
add ecx, dword [ebp + 0x18]
mov dword [esp + 0x44], ebx
mov ebx, eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x4c], esi
mov eax, ebx
shl eax, 4
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x150], ebx
mov edx, dword [ecx + eax - 0x10]
mov ecx, dword [ecx + eax - 8]
xor eax, eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x64], ecx
mov dword [esp], eax
add edx, ecx
sub edx, esi
mov dword [0x5e18fc], eax
lea edx, [edx + edx + 2]
mov dword [esp + 0x5c], edx
push 0x20
push 0x5da598
mov dword [0x5e1900], edx
lea ecx, [esp + 0x158]
push ecx
push 0x5c1b04
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
mov dword [esp + 0x174], esi
lea edx, [esp + 0x174]
push edx
push 0x5c1b0c
push edi
call fcn.00547300
mov edx, dword [esp + 0x5c]
lea ecx, [esp + 0x188]
sub edx, esi
mov dword [esp + 0x64], edx
mov dword [esp + 0x188], edx
push ecx
push 0x5c1b14
push edi
call fcn.00547300
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x19c]
mov dword [esp + 0x19c], edx
push ecx
push 0x5c1b1c
push edi
call fcn.00547300
mov dword [esp + 0x1b0], 0
lea edx, [esp + 0x1b0]
push edx
push 0x5c1b24
push edi
call fcn.00547300
mov edx, dword [esp + 0xa8]
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x1c4], edx
push ecx
push 0x5c1b2c
push edi
call fcn.00547300
mov dword [esp + 0x58], 0
mov dword [esp + 0x1d8], ebx
push 0x20
push 0x5da598
lea edx, [esp + 0x1e0]
push edx
push 0x5c1b34
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x74
mov dword [esp + 0x188], esi
lea edx, [esp + 0x188]
push edx
push 0x5c1b3c
push edi
call fcn.00547300
mov edx, dword [esp + 0x48]
lea ecx, [esp + 0x19c]
mov dword [esp + 0x19c], edx
push ecx
push 0x5c1b44
push edi
call fcn.00547300
mov edx, dword [esp + 0x7c]
lea ecx, [esp + 0x1b0]
mov dword [esp + 0x1b0], edx
push ecx
push 0x5c1b4c
push edi
call fcn.00547300
mov dword [esp + 0x1c4], 0
lea edx, [esp + 0x1c4]
push edx
push 0x5c1b54
push edi
call fcn.00547300
mov edx, dword [esp + 0x8c]
lea ecx, [esp + 0x1d8]
mov dword [esp + 0x1d8], edx
push ecx
push 0x5c1b5c
push edi
call fcn.00547300
add esp, 0x3c
inc ebx
cmp ebx, dword [esp + 0x54]
jle 0x471aef
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x4c]
xor eax, eax
mov dword [esp], eax
push 0x20
push 0x5da634
push eax
push 0x5c1b64
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
xor eax, eax
mov dword [esp + 0x1c], eax
push 0x20
push 0x5da634
push eax
push 0x5c1b68
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x38
test ebx, ebx
jle 0x471f2e
mov eax, dword [esp + 0x24]
xor ecx, ecx
mov edx, 1
mov dword [esp + 0x44], ebx
mov ebx, edx
mov eax, dword [eax]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], esi
mov ecx, ebx
shl ecx, 4
mov edx, dword [ebp + 0x18]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x64], esi
mov esi, dword [edx + ecx - 0x10]
mov dword [esp + 0x34], esi
mov eax, dword [edx + ecx - 0xc]
mov esi, dword [edx + ecx - 8]
add eax, esi
mov ecx, dword [edx + ecx - 4]
mov edx, dword [esp + 0x2c]
imul edx, ecx
add eax, edx
mov dword [esp + 0x54], ecx
mov dword [esp], 0
mov dword [esp + 0x1b0], ebx
mov dword [0x5e18fc], ecx
lea eax, [eax + eax + 2]
mov dword [esp + 0x5c], eax
push 0x20
push 0x5da598
mov dword [0x5e1900], eax
lea eax, [esp + 0x1b8]
push eax
push 0x5c1b6c
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
mov eax, dword [esp + 0x80]
lea ecx, [esp + 0x1d4]
mov dword [esp + 0x1d4], eax
push ecx
push 0x5c1b74
push edi
call fcn.00547300
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x1e8]
sub eax, dword [esp + 0x8c]
mov dword [esp + 0x64], eax
mov dword [esp + 0x1e8], eax
push ecx
push 0x5c1b7c
push edi
call fcn.00547300
mov dword [esp + 0x1fc], esi
lea eax, [esp + 0x1fc]
push eax
push 0x5c1b84
push edi
call fcn.00547300
mov eax, dword [esp + 0x94]
lea ecx, [esp + 0x210]
mov dword [esp + 0x210], eax
push ecx
push 0x5c1b8c
push edi
call fcn.00547300
mov eax, dword [esp + 0xa8]
lea ecx, [esp + 0x224]
mov dword [esp + 0x224], eax
push ecx
push 0x5c1b94
push edi
call fcn.00547300
mov dword [esp + 0x58], 0
mov dword [esp + 0x238], ebx
push 0x20
push 0x5da598
lea eax, [esp + 0x240]
push eax
push 0x5c1b9c
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x74
mov eax, dword [esp + 0x64]
lea ecx, [esp + 0x1e8]
mov dword [esp + 0x1e8], eax
push ecx
push 0x5c1ba4
push edi
call fcn.00547300
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x1fc]
mov dword [esp + 0x1fc], eax
push ecx
push 0x5c1bac
push edi
call fcn.00547300
mov dword [esp + 0x210], esi
lea eax, [esp + 0x210]
push eax
push 0x5c1bb4
push edi
call fcn.00547300
mov eax, dword [esp + 0x78]
lea ecx, [esp + 0x224]
mov dword [esp + 0x224], eax
push ecx
push 0x5c1bbc
push edi
call fcn.00547300
mov eax, dword [esp + 0x8c]
lea ecx, [esp + 0x238]
mov dword [esp + 0x238], eax
push ecx
push 0x5c1bc4
push edi
call fcn.00547300
add esp, 0x3c
inc ebx
cmp ebx, dword [esp + 0x44]
jle 0x471d35
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x4c]
xor eax, eax
mov dword [esp], eax
push 0x20
push 0x5da5b8
push eax
push 0x5c1bcc
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
xor eax, eax
mov dword [esp + 0x1c], eax
push 0x20
push 0x5da5b8
push eax
push 0x5c1bd0
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x38
test esi, esi
jle 0x472189
mov eax, dword [esp + 0x24]
xor ecx, ecx
shl ebx, 4
mov edx, 1
add ebx, dword [ebp + 0x18]
mov eax, dword [eax]
mov dword [esp + 0x44], ebx
mov ebx, edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], esi
mov ecx, ebx
shl ecx, 4
mov edx, dword [esp + 0x44]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x5c], esi
mov esi, dword [edx + ecx - 0x10]
mov dword [esp + 0x34], esi
mov eax, dword [edx + ecx - 0xc]
mov esi, dword [edx + ecx - 8]
add eax, esi
mov ecx, dword [edx + ecx - 4]
mov edx, dword [esp + 0x2c]
imul edx, ecx
add eax, edx
mov dword [esp + 0x3c], ecx
mov dword [esp], 0
mov dword [esp + 0x210], ebx
mov dword [0x5e18fc], ecx
lea eax, [eax + eax + 2]
mov dword [esp + 0x54], eax
push 0x20
push 0x5da598
mov dword [0x5e1900], eax
lea eax, [esp + 0x218]
push eax
push 0x5c1bd4
push 0x8384ff00
push 6
push edi
call fcn.00545ab0
mov eax, dword [esp + 0x78]
lea ecx, [esp + 0x234]
mov dword [esp + 0x234], eax
push ecx
push 0x5c1bdc
push edi
call fcn.00547300
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x248]
sub eax, dword [esp + 0x84]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x248], eax
push ecx
push 0x5c1be4
push edi
call fcn.00547300
mov dword [esp + 0x25c], esi
lea eax, [esp + 0x25c]
push eax
push 0x5c1bec
push edi
call fcn.00547300
mov eax, dword [esp + 0x7c]
lea ecx, [esp + 0x270]
mov dword [esp + 0x270], eax
push ecx
push 0x5c1bf4
push edi
call fcn.00547300
mov eax, dword [esp + 0xa0]
lea ecx, [esp + 0x284]
mov dword [esp + 0x284], eax
push ecx
push 0x5c1bfc
push edi
call fcn.00547300
mov dword [esp + 0x58], 0
mov dword [esp + 0x298], ebx
push 0x20
push 0x5da598
lea eax, [esp + 0x2a0]
push eax
push 0x5c1c04
push 0x8384ff00
push 0x3c
push edi
call fcn.00545ab0
add esp, 0x74
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x248]
mov dword [esp + 0x248], eax
push ecx
push 0x5c1c0c
push edi
call fcn.00547300
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x25c]
mov dword [esp + 0x25c], eax
push ecx
push 0x5c1c14
push edi
call fcn.00547300
mov dword [esp + 0x270], esi
lea eax, [esp + 0x270]
push eax
push 0x5c1c1c
push edi
call fcn.00547300
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0x284]
mov dword [esp + 0x284], eax
push ecx
push 0x5c1c24
push edi
call fcn.00547300
mov eax, dword [esp + 0x84]
lea ecx, [esp + 0x298]
mov dword [esp + 0x298], eax
push ecx
push 0x5c1c2c
push edi
call fcn.00547300
add esp, 0x3c
inc ebx
cmp ebx, dword [esp + 0x4c]
jle 0x471f9d
add esp, 0x274
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x14
mov dword [0x5e1900], eax
jmp 0x4715e4
mov dword [esp + 0x2c], esi
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x7c]
jmp 0x4721c5
mov dword [esp + 0x2c], eax
mov ebx, dword [esi + 4]
mov ecx, dword [esi]
mov dword [esp + 0x30], edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x38], ecx
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
jmp 0x47148a
mov dword [0x5ed048], 0
mov dword [0x5e1900], eax
jmp 0x4714c9
mov dword [esp + 0x2c], esi
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x80]
jmp 0x47221b
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x88], esi
mov ecx, dword [edx + 4]
mov edx, dword [edx]
mov dword [esp + 0x30], edx
mov dword [esp + 0x38], ecx
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x2c]
jmp 0x4712ee
mov edx, 0
mov dword [0x5ed044], 0
mov dword [esp + 0x28], edx
mov dword [esp + 0x34], edx
jle 0x4721de
jmp 0x471338