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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x8b0]
cmp eax, dword [ecx + 8]
jbe 0x607803
sub esp, 0x930
lea eax, [0x7347e0]
mov dword [esp], eax
mov ecx, dword [esp + 0x944]
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x920], eax
lea ecx, [0x7347e0]
mov dword [esp], ecx
mov edx, dword [esp + 0x944]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x91c], eax
lea ecx, [0x749400]
mov dword [esp], ecx
mov edx, dword [esp + 0x944]
lea ebx, [edx + 0x3f]
shl ebx, 4
shr ebx, 6
mov dword [esp + 0x88], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x918], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x90], ecx
lea edx, [0x7347e0]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.004426a0
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x924], ecx
mov dword [esp + 0x928], eax
mov dword [esp + 0x92c], eax
nop
mov eax, dword [esp + 0x944]
cmp eax, 0x40
jb 0x6066e1
mov eax, 0x40
mov dword [esp + 0x58], eax
lea ecx, [0x749400]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x914], eax
lea ecx, [0x74cb00]
mov dword [esp], ecx
mov dword [esp + 4], 0x801
mov dword [esp + 8], 0x801
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x910], eax
lea edi, [esp + 0xf4]
xor eax, eax
call fcn.00456d20
lea edi, [esp + 0x1f4]
call fcn.00456d20
lea edi, [esp + 0x2f4]
call fcn.00456d20
lea edi, [esp + 0x3f4]
call fcn.00456d20
mov ecx, dword [esp + 0x91c]
mov edx, dword [esp + 0x944]
xor ebx, ebx
jmp 0x60677b
mov dword [ecx + ebx*4], 0
inc ebx
cmp edx, ebx
jle 0x606786
ja 0x606773
jmp 0x6077f9
mov ebx, dword [esp + 0x94c]
mov ebp, dword [esp + 0x948]
mov esi, dword [esp + 0x940]
xor edi, edi
xor eax, eax
mov dword [esp + 0x60], eax
xor eax, eax
jmp 0x6067c2
mov edi, dword [esp + 0x948]
mov edi, edx
mov dword [esp + 0x60], ebp
mov edx, dword [esp + 0x944]
mov ebp, dword [esp + 0x948]
cmp esi, edi
jbe 0x60681c
mov ebp, dword [esp + 0x60]
cmp edx, ebp
jbe 0x6077e1
inc dword [ecx + ebp*4]
lea edx, [edi + 1]
cmp esi, edx
je 0x60680c
cmp ebx, edi
jbe 0x6077d8
mov esi, dword [esp + 0x948]
movzx ebp, byte [esi + edi]
cmp ebx, edx
jbe 0x6077cf
lea esi, [edi + esi + 1]
xchg ebp, eax
cmp byte [esi], al
xchg ebp, eax
je 0x60680f
mov ebp, dword [esp + 0x60]
mov esi, dword [esp + 0x940]
inc ebp
jmp 0x6067a7
mov esi, dword [esp + 0x940]
mov ebp, dword [esp + 0x60]
jmp 0x6067a7
mov ebx, dword [esp + 0x60]
cmp edx, ebx
jne 0x6077b7
mov ebp, dword [esp + 0x934]
mov esi, dword [esp + 0x938]
mov ebx, dword [esp + 0x914]
mov edi, dword [esp + 0x58]
xor eax, eax
mov dword [esp + 0xb8], eax
xor eax, eax
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0xac], eax
mov dword [esp + 0xec], ecx
xor ecx, ecx
mov dword [esp + 0x64], ecx
xor ecx, ecx
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0x918]
mov dword [esp + 0x900], ecx
xor eax, eax
mov ecx, dword [esp + 0xec]
jmp 0x6068e0
mov eax, dword [esp + 0xb8]
add eax, 0x40
mov ebp, dword [esp + 0x944]
mov ebx, dword [esp + 0x914]
mov ebp, dword [esp + 0x934]
mov esi, dword [esp + 0x938]
mov edi, dword [esp + 0x58]
mov dword [esp + 0xb8], eax
mov dword [esp + 0x64], ecx
mov dword [esp + 0xa4], edx
xor eax, eax
mov ecx, dword [esp + 0x91c]
mov edx, dword [esp + 0x944]
mov ebp, dword [esp + 0xb8]
cmp edx, ebp
jbe 0x606a7f
sub edx, ebp
cmp edx, 0x40
jb 0x6068fb
mov edx, 0x40
mov dword [esp + 0x54], edx
xor eax, eax
mov dword [esp + 0xb4], eax
xor eax, eax
jmp 0x6072e8
mov dword [esp], ebx
mov dword [esp + 4], edi
mov dword [esp + 8], edi
lea eax, [esp + 0xf4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0x40
mov dword [esp + 0x14], 0x40
lea ecx, [esp + 0x2f4]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], 0x40
mov dword [esp + 0x20], 0x40
lea ebp, [esp + 0x1f4]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], 0x40
mov dword [esp + 0x2c], 0x40
mov esi, dword [esp + 0x910]
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], 0x801
mov dword [esp + 0x38], 0x801
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], 0x40
mov dword [esp + 0x48], 0x800
call fcn.006115c0
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 0x64]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0xac]
cmp ebx, edx
jae 0x6069d4
test ebx, ebx
jne 0x6069cb
mov ebp, edx
jmp 0x60765f
mov ebp, edx
mov edx, ebx
jmp 0x60765f
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x900]
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x900], esi
mov dword [esp + 0xac], ebx
mov edi, ebx
mov ebx, dword [esp + 0x90]
cmp ebx, edx
jae 0x606a22
test ebx, ebx
jne 0x606a09
mov ebx, edx
jmp 0x60757c
mov dword [esp + 0xe4], eax
mov eax, ebx
mov ebx, edx
mov edx, eax
mov eax, dword [esp + 0xe4]
jmp 0x60757c
mov edx, dword [esp + 0x914]
mov ebx, dword [esp + 0x58]
mov dword [esp + 0xdc], eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xdc]
jmp 0x6073d7
mov ebp, dword [esp + 0x54]
mov dword [esp + 0xd4], eax
xor eax, eax
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xd4]
jmp 0x6074bd
mov edx, dword [esp + 0xa4]
add edx, eax
cmp ecx, edx
je 0x606894
jmp 0x607504
mov ebx, dword [esp + 0xa4]
mov ebp, ebx
shl ebx, 6
mov edi, ebp
shr ebp, 1
imul ebp, edi
cmp ebx, ebp
jb 0x606a98
mov ebx, ebp
mov dword [esp + 0x98], ebx
lea ebp, [ebx + 1]
cmp ebp, 0x801
ja 0x606abf
mov ebp, 0x801
mov eax, dword [esp + 0x910]
mov dword [esp + 0x908], eax
jmp 0x606af5
mov dword [esp + 0xc8], ebp
lea eax, [0x74cb00]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebp
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov edi, dword [esp + 0xa4]
mov ebp, dword [esp + 0xc8]
mov dword [esp + 0x908], eax
mov dword [esp + 0xa0], ebp
lea eax, [0x7347e0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xa4]
xor edx, edx
jmp 0x606b25
mov dword [eax + edx*4], edx
inc edx
cmp edx, ecx
jb 0x606b21
mov dword [esp + 0x918], eax
mov edx, dword [esp + 0x924]
mov ebx, dword [esp + 0x928]
mov ebp, dword [esp + 0x92c]
mov esi, dword [esp + 0x900]
mov dword [esp], esi
mov edi, dword [esp + 0x7c]
mov dword [esp + 4], edi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebp
mov edx, dword [esp + 0x920]
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x944]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
mov ebp, dword [esp + 0x908]
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0xa0]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0x100
mov ebp, dword [esp + 0x98]
mov dword [esp + 0x48], ebp
call fcn.006115c0
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x80], eax
mov dword [esp + 0x924], 0
mov dword [esp + 0x928], 0
mov dword [esp + 0x92c], 0
lea ecx, [0x7347e0]
mov dword [esp], ecx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xa4]
xor edx, edx
jmp 0x606c23
mov dword [eax + edx*4], ebx
inc edx
cmp edx, ecx
jae 0x606c34
mov ebx, dword [0x67310c]
jb 0x606c1f
jmp 0x607288
mov dword [esp + 0x914], eax
mov ebx, dword [esp + 0x944]
mov ebp, dword [esp + 0x91c]
mov esi, dword [esp + 0x934]
mov edx, dword [esp + 0x938]
xor edi, edi
xor edi, edi
mov dword [esp + 0x84], edi
xor edi, edi
mov dword [esp + 0x68], edi
xor edi, edi
jmp 0x606c9f
mov esi, dword [esp + 0xb8]
inc esi
mov eax, ebp
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x938]
mov ebp, dword [esp + 0x91c]
mov edi, esi
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x944]
mov esi, dword [esp + 0x934]
cmp ebx, edi
jbe 0x606de0
mov dword [esp + 0xb8], edi
lea edi, [esp + 0x4f4]
mov ecx, 0x103
mov eax, 0
rep stosd dword es:[edi], eax
lea edi, [esp + 0x4f4]
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov dword [esp + 0x8f4], 0
movsd xmm0, qword [0x7c9e6c]
movsd qword [esp + 0x8f8], xmm0
mov ecx, dword [esp + 0xb8]
mov edi, dword [esp + 0x84]
mov eax, 0
mov dword [esp + 0xb0], eax
mov eax, 0
jmp 0x60717d
test ecx, ecx
jne 0x606d1e
mov ebx, dword [esp + 0x920]
mov ebp, dword [ebx]
jmp 0x606d29
mov ebx, dword [esp + 0x920]
mov ebp, dword [ebx + ecx*4 - 4]
mov esi, dword [esp + 0x7c]
cmp ebp, esi
jae 0x60726d
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x84], edi
lea eax, [esp + 0x4f4]
mov dword [esp], eax
imul ecx, ebp, 0x40c
mov edx, dword [esp + 0x900]
add ecx, edx
mov dword [esp + 4], ecx
call fcn.00611e20
movsd xmm0, qword [esp + 8]
mov eax, dword [esp + 0x918]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x900]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0xa4]
mov esi, dword [esp + 0x6c]
xor edi, edi
jmp 0x6071c5
mov edi, ebx
mov ebx, dword [esp + 0xb8]
mov ebp, dword [esp + 0x920]
mov dword [ebp + ebx*4], esi
mov ebp, dword [esp + 0xa4]
cmp esi, ebp
jae 0x607252
mov ebp, dword [esp + 0x914]
mov ebx, dword [ebp + esi*4]
cmp dword [0x67310c], ebx
jne 0x606dd7
mov ebx, dword [esp + 0x68]
mov dword [ebp + esi*4], ebx
inc ebx
jmp 0x606c6c
mov ebx, dword [esp + 0x68]
jmp 0x606c6c
mov esi, dword [esp + 0x954]
mov edi, dword [esi + 0x20]
cmp ebx, edi
jbe 0x606e02
test edi, edi
jne 0x606df9
mov edx, ebx
jmp 0x60705c
mov edx, ebx
mov ebx, edi
jmp 0x60705c
mov edi, dword [esi + 0x24]
cmp ebx, edi
jbe 0x606e1d
test edi, edi
jne 0x606e14
mov edx, ebx
jmp 0x606f69
mov edx, ebx
mov ebx, edi
jmp 0x606f69
mov edx, dword [esp + 0x920]
xor edi, edi
xor edi, edi
mov dword [esp + 0x9c], edi
xor edi, edi
mov dword [esp + 0x5c], edi
xor edi, edi
xchg edi, eax
mov byte [esp + 0x53], al
xchg edi, eax
xor edi, edi
jmp 0x606e75
mov edi, dword [esp + 0x920]
mov edx, edi
mov edi, dword [esp + 0xc8]
mov dword [esp + 0x9c], esi
mov dword [esp + 0x5c], ebp
mov byte [esp + 0x53], bl
mov ebx, dword [esp + 0x944]
mov ebp, dword [esp + 0x91c]
mov esi, dword [esp + 0x954]
cmp ebx, edi
jbe 0x606f27
mov esi, dword [esp + 0x9c]
add esi, dword [ebp + edi*4]
lea ebp, [edi + 1]
mov dword [esp + 0xc8], ebp
cmp ebx, ebp
je 0x606eb6
mov ebx, dword [edx + edi*4]
jbe 0x606f59
lea ebp, [edx + edi*4 + 4]
cmp dword [ebp], ebx
je 0x606f12
mov ebx, dword [esp + 0x944]
mov ebp, dword [esp + 0xc8]
mov edi, dword [edx + edi*4]
cmp ecx, edi
jbe 0x606f52
mov dword [esp + 0xc4], esi
mov edi, dword [eax + edi*4]
mov edx, dword [esp + 0x954]
mov ebx, dword [edx + 0xc]
mov ebp, dword [edx + 8]
mov esi, dword [esp + 0x5c]
cmp esi, ebx
jae 0x606f49
xchg edi, eax
mov byte [ebp + esi], al
xchg edi, eax
mov ebx, dword [edx + 0x18]
mov ebp, dword [edx + 0x14]
cmp esi, ebx
jae 0x606f40
mov ebx, dword [esp + 0xc4]
mov dword [ebp + esi*4], ebx
movzx ebx, byte [esp + 0x53]
xchg edi, eax
cmp bl, al
xchg edi, eax
ja 0x606f08
mov ebx, edi
lea ebp, [esi + 1]
xor esi, esi
jmp 0x606e41
mov edx, dword [esp + 0x954]
mov ebp, dword [esp + 0x5c]
movzx ebx, byte [esp + 0x53]
jmp 0x606e41
mov eax, dword [esp + 0x5c]
mov dword [esi + 4], eax
movzx eax, byte [esp + 0x53]
movzx eax, al
inc eax
mov dword [esi], eax
add esp, 0x930
ret
mov eax, esi
mov ecx, ebx
call fcn.00456b50
mov eax, esi
mov ecx, ebx
call fcn.00456b50
mov eax, edi
call fcn.00456b50
mov eax, ebp
mov ecx, dword [esp + 0x944]
call fcn.00456b50
shl ebx, 1
cmp edx, ebx
ja 0x606f67
mov edi, dword [esi + 0x1c]
cmp ebx, edi
jg 0x606f82
ja 0x607051
mov dword [esi + 0x18], ebx
jmp 0x60703e
mov dword [esp + 0x70], ebx
lea eax, [0x7347e0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x954]
mov edx, dword [ecx + 0x24]
test edx, edx
je 0x606ff8
mov ebx, dword [ecx + 0x14]
mov ebp, dword [ecx + 0x1c]
cmp ebp, edx
jb 0x607048
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jg 0x606fc6
mov edx, ebp
cmp ebx, eax
je 0x606ffc
mov dword [esp + 0x918], eax
mov dword [esp], eax
mov dword [esp + 4], ebx
shl edx, 2
mov dword [esp + 8], edx
call fcn.00457450
mov eax, dword [esp + 0x918]
mov ecx, dword [esp + 0x954]
mov ebp, dword [esp + 0x70]
jmp 0x606ffc
mov ebp, dword [esp + 0x70]
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x1c], ebp
mov edx, dword [0x901e80]
test edx, edx
jne 0x607011
mov dword [ecx + 0x14], eax
jmp 0x607019
lea edi, [ecx + 0x14]
call fcn.00456ac0
mov eax, dword [esp + 0x914]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x944]
mov ebx, ebp
mov ebp, dword [esp + 0x91c]
mov esi, dword [esp + 0x954]
mov dword [esi + 0x24], ebx
mov ebx, edx
jmp 0x606e1d
mov ecx, edx
mov edx, ebp
call fcn.00456b90
mov ecx, ebx
mov edx, edi
call fcn.00456b90
shl ebx, 1
cmp edx, ebx
ja 0x60705a
mov edi, dword [esi + 0x10]
cmp ebx, edi
jg 0x607075
ja 0x607141
mov dword [esi + 0xc], ebx
jmp 0x60712e
mov dword [esp + 0x74], ebx
lea eax, [0x734860]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x954]
mov edx, dword [ecx + 0x20]
test edx, edx
je 0x6070e8
mov ebx, dword [ecx + 8]
mov ebp, dword [ecx + 0x10]
cmp ebp, edx
jb 0x607138
mov ebp, dword [esp + 0x74]
cmp ebp, edx
jg 0x6070b9
mov edx, ebp
cmp ebx, eax
je 0x6070ec
mov dword [esp + 0x918], eax
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
call fcn.00457450
mov eax, dword [esp + 0x918]
mov ecx, dword [esp + 0x954]
mov ebp, dword [esp + 0x74]
jmp 0x6070ec
mov ebp, dword [esp + 0x74]
mov dword [ecx + 0xc], ebp
mov dword [ecx + 0x10], ebp
mov ebx, dword [0x901e80]
test ebx, ebx
jne 0x607101
mov dword [ecx + 8], eax
jmp 0x607109
lea edi, [ecx + 8]
call fcn.00456ac0
mov eax, dword [esp + 0x914]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x944]
mov ebx, ebp
mov ebp, dword [esp + 0x91c]
mov esi, dword [esp + 0x954]
mov dword [esi + 0x20], ebx
mov ebx, edx
jmp 0x606e02
mov ecx, edx
mov edx, ebp
call fcn.00456b90
mov ecx, ebx
mov edx, edi
call fcn.00456b90
nop
movzx ebp, byte [edi + esi]
inc dword [esp + ebp*4 + 0x4f4]
inc dword [esp + 0x8f4]
inc ebx
inc edi
mov ebp, dword [esp + 0x944]
cmp ebp, ecx
mov ebp, dword [esp + 0x91c]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0x944]
jbe 0x60727f
lea ebp, [ebp + ecx*4]
mov ebx, dword [esp + 0xb0]
cmp dword [ebp], ebx
jbe 0x606d0f
cmp edx, edi
ja 0x60714a
jmp 0x607276
lea edi, [ebx + 1]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x900]
mov ebx, dword [esp + 0x7c]
mov eax, dword [esp + 0xa4]
mov eax, ebp
mov ebp, dword [esp + 0xa4]
cmp edi, ecx
jae 0x606d93
cmp edi, ebp
jae 0x607264
mov ebp, dword [eax + edi*4]
cmp ebx, ebp
jbe 0x60725b
mov dword [esp + 0xb0], edi
movsd qword [esp + 0xcc], xmm0
mov dword [esp + 0x6c], esi
lea eax, [esp + 0x4f4]
mov dword [esp], eax
imul ecx, ebp, 0x40c
add ecx, edx
mov dword [esp + 4], ecx
call fcn.00611e20
movsd xmm0, qword [esp + 8]
movsd xmm1, qword [esp + 0xcc]
ucomisd xmm1, xmm0
jbe 0x607237
mov ebx, dword [esp + 0xb0]
mov ebp, dword [esp + 0x918]
mov esi, dword [ebp + ebx*4]
jmp 0x6071a0
mov ebx, dword [esp + 0xb0]
mov ebp, dword [esp + 0x918]
movsd xmm0, xmm1
mov esi, dword [esp + 0x6c]
jmp 0x6071a0
mov eax, esi
mov ecx, ebp
call fcn.00456b50
mov eax, ebp
mov ecx, ebx
call fcn.00456b50
mov eax, edi
mov ecx, ebp
call fcn.00456b50
mov eax, ebp
mov ecx, esi
call fcn.00456b50
mov eax, edi
mov ecx, edx
call fcn.00456b50
mov eax, ecx
mov ecx, ebx
call fcn.00456b50
mov eax, edx
call fcn.00456b50
mov dword [esp + eax*4 + 0x1f4], eax
mov dword [esp + eax*4 + 0x2f4], eax
mov dword [esp + eax*4 + 0xf4], 1
inc eax
mov ebp, dword [esp + 0xb8]
mov edx, dword [esp + 0x944]
mov ebx, dword [esp + 0x91c]
mov esi, dword [esp + 0x934]
mov edi, dword [esp + 0x938]
mov ecx, ebx
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x914]
mov esi, edi
mov edi, dword [esp + 0x58]
mov dword [esp + 0xb4], eax
xor eax, eax
mov esi, dword [esp + 0xb4]
cmp esi, edx
jae 0x60690f
cmp esi, edi
jae 0x6077ae
imul edx, esi, 0x40c
mov dword [esp + 0xc0], edx
lea ebp, [ebx + edx]
mov edi, ebp
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov dword [ebx + edx + 0x400], 0
movsd xmm0, qword [0x7c9e6c]
movsd qword [ebx + edx + 0x404], xmm0
mov ecx, ebp
lea ebp, [edx + ebx]
mov dword [esp + 0x904], ebp
mov edi, edx
lea edx, [ebx + edx + 0x400]
xor eax, eax
mov dword [esp + 0x8c], eax
xor eax, eax
jmp 0x60774b
mov eax, dword [esp + 0x904]
mov dword [esp], eax
call fcn.005ff560
movsd xmm0, qword [esp + 4]
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0x914]
movsd qword [ecx + eax + 0x404], xmm0
mov eax, dword [esp + 0xb4]
cmp eax, 0x40
jb 0x60728f
jmp 0x607792
mov dword [esp + ebx*4 + 0x3f4], edi
lea ecx, [edi + 1]
inc edx
mov ebp, dword [esp + 0x7c]
mov ebx, dword [esp + 0x900]
mov edi, dword [esp + 0x914]
mov ebx, esi
mov esi, dword [esp + 0x900]
mov edi, dword [esp + 0xac]
mov dword [esp + 0xb4], ecx
mov ecx, edx
mov edx, dword [esp + 0x914]
mov ebp, dword [esp + 0xb4]
cmp ebp, eax
jae 0x606a49
cmp ebp, 0x40
jae 0x60756e
mov ebp, dword [esp + ebp*4 + 0x1f4]
cmp ebx, ebp
jbe 0x607565
imul ebp, ebp, 0x40c
add ebp, edx
mov edx, dword [esp + 0x7c]
cmp edx, ecx
jbe 0x60755c
mov dword [esp + 0xa8], ecx
imul edx, ecx, 0x40c
add edx, esi
mov edi, edx
mov esi, ebp
mov ecx, 0x103
rep movsd dword es:[edi], dword [esi]
mov edx, dword [esp + 0xb4]
mov ebp, dword [esp + edx*4 + 0x1f4]
cmp ebp, 0x40
jae 0x607550
mov ecx, dword [esp + 0x928]
mov esi, ebx
mov ebx, dword [esp + 0x924]
mov ebp, dword [esp + ebp*4 + 0xf4]
mov edi, edx
mov edx, dword [esp + 0xa8]
cmp edx, ecx
jae 0x607549
mov dword [ebx + edx*4], ebp
mov ebx, dword [esp + edi*4 + 0x1f4]
cmp ebx, 0x40
jb 0x60739a
jmp 0x60753d
mov edi, dword [esp + 0x920]
mov dword [edi + esi*4], ebx
inc edx
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0xa4]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x900]
mov edi, dword [esp + 0xac]
mov dword [esp + 0xb4], edx
mov edx, dword [esp + 0x914]
mov edx, dword [esp + 0xb4]
cmp edx, ebp
jae 0x606a69
mov ebx, dword [esp + 0xb8]
lea esi, [edx + ebx]
cmp edx, 0x40
jae 0x607531
mov ebx, dword [esp + edx*4 + 0x2f4]
cmp ebx, 0x40
jae 0x607525
mov ebx, dword [esp + ebx*4 + 0x3f4]
mov ebp, dword [esp + 0xa4]
add ebx, ebp
mov ebp, dword [esp + 0x944]
cmp ebp, esi
ja 0x607483
jmp 0x60751c
lea eax, [0x7346e0]
mov dword [esp], eax
lea eax, [0x7ca28c]
mov dword [esp + 4], eax
call fcn.00430590
mov eax, esi
mov ecx, ebp
call fcn.00456b50
mov eax, ebx
mov ecx, 0x40
call fcn.00456b50
mov eax, edx
mov ecx, 0x40
call fcn.00456b50
mov eax, ebx
mov ecx, 0x40
call fcn.00456b50
mov eax, edx
call fcn.00456b50
mov eax, ebp
mov ecx, 0x40
call fcn.00456b50
mov eax, ecx
mov ecx, edx
call fcn.00456b50
mov eax, ebp
mov ecx, ebx
call fcn.00456b50
mov eax, ebp
mov ecx, 0x40
call fcn.00456b50
shl edx, 1
cmp edx, ebx
jb 0x60757a
mov ebx, dword [esp + 0x92c]
cmp edx, ebx
jg 0x60759d
ja 0x607654
mov dword [esp + 0x928], edx
jmp 0x607643
mov dword [esp + 0x78], edx
lea eax, [0x7347e0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x90]
test ecx, ecx
je 0x60760d
mov ebx, dword [esp + 0x924]
mov edx, dword [esp + 0x92c]
cmp edx, ecx
jb 0x60764f
mov edx, dword [esp + 0x78]
cmp edx, ecx
jg 0x6075e2
mov ecx, edx
cmp ebx, eax
je 0x607611
mov dword [esp + 0x918], eax
mov dword [esp], eax
mov dword [esp + 4], ebx
shl ecx, 2
mov dword [esp + 8], ecx
call fcn.00457450
mov eax, dword [esp + 0x918]
mov edx, dword [esp + 0x78]
jmp 0x607611
mov edx, dword [esp + 0x78]
mov dword [esp + 0x928], edx
mov dword [esp + 0x92c], edx
mov dword [esp + 0x924], eax
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x64]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x900]
mov edi, dword [esp + 0xac]
mov dword [esp + 0x90], edx
jmp 0x606a22
call fcn.00456b90
mov ecx, edx
mov edx, ebx
call fcn.00456b90
shl edx, 1
cmp edx, ebp
jb 0x60765d
mov dword [esp + 0xc8], ebp
mov dword [esp + 0xbc], edx
lea eax, [0x749400]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.004426a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xac]
test ecx, ecx
je 0x6076e3
mov edx, dword [esp + 0x7c]
cmp edx, ecx
jb 0x607705
mov ebx, dword [esp + 0xbc]
cmp ebx, ecx
jg 0x6076ab
mov ecx, ebx
mov ebp, dword [esp + 0x900]
cmp ebp, eax
je 0x6076ea
mov dword [esp + 0x90c], eax
mov dword [esp], eax
mov dword [esp + 4], ebp
imul ecx, ecx, 0x40c
mov dword [esp + 8], ecx
call fcn.00457450
mov eax, dword [esp + 0x90c]
mov ebx, dword [esp + 0xbc]
jmp 0x6076ea
mov ebx, dword [esp + 0xbc]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0xc8]
mov ebp, ebx
mov esi, eax
mov eax, dword [esp + 0x94]
jmp 0x6069df
call fcn.00456b90
nop
mov eax, dword [esp + 0x934]
movzx eax, byte [ebx + eax]
inc dword [ecx + eax*4]
inc dword [edx]
lea eax, [ebp + 1]
inc ebx
mov ebp, dword [esp + 0xb8]
mov ebp, dword [esp + 0x904]
mov edi, dword [esp + 0xc0]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x84], ebx
xor eax, eax
mov ebx, dword [esp + 0x914]
mov ebx, dword [esp + 0xb8]
lea edi, [ebx + esi]
mov ebp, dword [esp + 0x944]
cmp ebp, edi
jbe 0x6077a5
mov ebp, dword [esp + 0x91c]
lea edi, [ebp + edi*4]
mov ebp, dword [esp + 0x8c]
cmp dword [edi], ebp
jbe 0x607359
mov edi, dword [esp + 0x938]
mov ebx, dword [esp + 0x84]
cmp edi, ebx
ja 0x60770a
jmp 0x60779c
mov ecx, 0x40
call fcn.00456b50
mov eax, ebx
mov ecx, edi
call fcn.00456b50
mov eax, edi
mov ecx, ebp
call fcn.00456b50
mov eax, esi
mov ecx, edi
call fcn.00456b50
lea eax, [0x7346e0]
mov dword [esp], eax
lea eax, [0x7ca28c]
mov dword [esp + 4], eax
call fcn.00430590
mov eax, edx
mov ecx, ebx
call fcn.00456b50
mov eax, edi
mov ecx, ebx
call fcn.00456b50
lea eax, [0x7346e0]
mov dword [esp], eax
lea eax, [0x7ca28c]
mov dword [esp + 4], eax
call fcn.00430590
mov eax, ebx
mov ecx, edx
call fcn.00456b40
nop
call fcn.00455690
jmp fcn.006065e0