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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x20c]
cmp eax, dword [ecx + 8]
jbe 0x6080b3
sub esp, 0x28c
mov ecx, dword [esp + 0x294]
mov dword [ecx + 0x44], 0x80000000
mov dword [esp + 0x48], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov edx, dword [esp + 0x290]
mov ebx, dword [edx]
test byte [ebx], al
lea esi, [ebx + 0x2a8]
lea edi, [esp + 0x25c]
call fcn.00466488
mov ecx, dword [edx]
test byte [ecx], al
lea esi, [ecx + 0x278]
lea edi, [esp + 0x1fc]
call fcn.00466488
lea edi, [esp + 0x22c]
lea esi, [esp + 0x25c]
call fcn.00466488
mov dword [esp + 0x16c], 0
mov dword [esp + 0x170], 0
lea ecx, [esp + 0x1fc]
mov dword [esp + 0x16c], ecx
lea ecx, [esp + 0x22c]
mov dword [esp + 0x170], ecx
mov ecx, dword [edx + 0x50]
mov ebx, dword [edx + 0x54]
mov ebp, dword [esp + 0x294]
mov dword [ebp + 0x3c], ecx
mov dword [ebp + 0x40], ebx
movzx ecx, word [edx + 0x58]
mov word [ebp + 0x48], cx
mov ecx, dword [esp + 0x16c]
mov eax, dword [edx + 0x38]
mov ebx, dword [edx + 0x40]
cmp eax, 0xffff
jne 0x606e8c
mov eax, edx
mov esi, ebp
mov edx, 0xffffffff
xor ebx, ebx
jmp 0x606f24
mov esi, ebp
mov ebp, dword [ecx + 4]
mov edi, edx
mov edx, dword [ecx]
cmp ebp, eax
jbe 0x6080ab
mov dword [esp + 0x148], ecx
shl eax, 5
add edx, eax
mov eax, edi
lea edi, [esp + 0x1e0]
mov ebp, esi
mov esi, edx
call fcn.004664ba
movzx ecx, bx
mov edx, dword [esp + 0x1f0]
lea ebx, [esp + 0x1e0]
cmp dword [ebx + 0x14], ecx
jg 0x606ee9
mov edx, dword [esp + 0x1e0]
test edx, edx
je 0x606ee2
movzx edx, word [edx + 2]
jmp 0x606ef1
mov edx, 0xffffffff
jmp 0x606ef1
shl ecx, 4
movzx edx, word [edx + ecx + 2]
cmp dx, 0xffff
jne 0x606f02
mov esi, ebp
mov edx, 0xffffffff
xor ebx, ebx
jmp 0x606f24
mov ebx, dword [esp + 0x148]
mov ecx, dword [ebx + 0x10]
mov ebx, dword [ebx + 0xc]
mov esi, ebp
movzx ebp, dx
cmp ecx, ebp
jbe 0x6080a4
lea ebp, [ebp + ebp*4]
mov ebx, dword [ebx + ebp*4 + 0x10]
mov word [esp + 0x48], dx
mov dword [esp + 0x90], ebx
mov edx, dword [esp + 0x170]
mov ebx, dword [eax + 0x3c]
mov ebp, dword [eax + 0x44]
cmp ebx, 0xffff
jne 0x606f51
mov ebx, 0xffffffff
xor edx, edx
jmp 0x606fd8
mov ecx, dword [edx + 4]
mov edi, edx
mov edx, dword [edx]
cmp ecx, ebx
jbe 0x60809d
shl ebx, 5
lea ecx, [ebx + edx]
mov edx, edi
lea edi, [esp + 0x1c4]
mov ebx, esi
mov esi, ecx
call fcn.004664ba
movzx ecx, bp
mov ebp, dword [esp + 0x1d4]
mov esi, ebx
lea ebx, [esp + 0x1c4]
cmp dword [ebx + 0x14], ecx
jg 0x606fa8
mov ebx, dword [esp + 0x1c4]
test ebx, ebx
je 0x606fa1
movzx ebx, word [ebx + 2]
jmp 0x606fb0
mov ebx, 0xffffffff
jmp 0x606fb0
shl ecx, 4
movzx ebx, word [ebp + ecx + 2]
cmp bx, 0xffff
jne 0x606fbf
mov ebx, 0xffffffff
xor edx, edx
jmp 0x606fd8
mov ecx, dword [edx + 0x10]
mov edx, dword [edx + 0xc]
movzx ebp, bx
cmp ecx, ebp
jbe 0x608096
lea ebp, [ebp + ebp*4]
mov edx, dword [edx + ebp*4 + 0x10]
mov word [esp + 0x4a], bx
mov dword [esp + 0x94], edx
mov edx, dword [eax + 0x30]
mov ebx, dword [eax + 0x2c]
mov ebp, dword [eax + 0x34]
test edx, edx
je 0x60727e
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.004098b0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x17c], 0
mov dword [esp + 0x180], 0
lea ecx, [0x608120]
mov dword [esp + 0x17c], ecx
mov ecx, dword [esp + 0x290]
mov dword [esp + 0x180], ecx
lea edx, [0x6900c0]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [esp + 0x17c]
mov dword [esp + 8], eax
call fcn.0048b050
mov eax, dword [esp + 0x290]
mov ecx, dword [eax + 0x2c]
mov edx, dword [eax + 0x30]
xor ebx, ebx
xor ebp, ebp
jmp 0x60707b
mov ecx, dword [esp + 0x168]
add ecx, 0x18
inc ebp
mov esi, ebx
mov ebx, ebp
mov ebp, esi
cmp ebx, edx
jge 0x607266
mov dword [esp + 0x168], ecx
lea edi, [esp + 0xd0]
mov esi, ecx
call fcn.004664c4
test ebx, ebx
jne 0x6070a4
mov ecx, ebp
mov ebp, ebx
mov ebx, ecx
jmp 0x60706a
mov ecx, ebx
mov ebx, dword [esp + 0xd0]
mov esi, ebx
mov ebx, dword [eax + 0x2c]
mov edi, ebx
mov ebx, dword [eax + 0x30]
cmp ebp, ebx
jae 0x60808d
mov dword [esp + 0x8c], ebx
lea ebx, [ebp + ebp*2]
mov dword [esp + 0x88], ebx
lea ebx, [edi + ebx*8]
cmp dword [ebx], esi
je 0x607108
lea ebx, [ebp + 1]
mov ebp, dword [esp + 0x8c]
cmp ebp, ebx
jbe 0x608084
mov ebp, ecx
mov ecx, dword [esp + 0x88]
lea edi, [edi + ecx*8 + 0x18]
lea esi, [esp + 0xd0]
call fcn.004664c4
jmp 0x60706a
movzx ebx, byte [esp + 0xd8]
test bl, 1
je 0x607182
mov ebx, dword [esp + 0x88]
mov esi, ebx
lea ebx, [edi + ebx*8 + 8]
mov edi, ebp
movzx ebp, byte [ebx]
or ebp, 1
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x2c]
mov dword [esp + 0x164], ebp
mov ebp, dword [esp + 0xd4]
cmp edi, ebx
jae 0x60807b
mov ebx, dword [esp + 0x164]
lea ebx, [ebx + esi*8 + 4]
mov dword [ebx], ebp
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x2c]
mov dword [esp + 0x164], ebp
mov ebp, dword [esp + 0xdc]
cmp edi, ebx
jae 0x608072
mov ebx, dword [esp + 0x164]
lea ebx, [ebx + esi*8 + 0xc]
mov dword [ebx], ebp
jmp 0x6071d3
mov ebx, dword [esp + 0x88]
mov esi, ebx
lea ebx, [edi + ebx*8 + 8]
mov edi, ebp
movzx ebp, byte [ebx]
xchg ebp, eax
test al, 1
xchg ebp, eax
je 0x6071a2
xor ebp, 1
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x2c]
cmp edi, ebx
jae 0x608069
lea ebx, [ebp + esi*8 + 4]
mov dword [esp + 0x160], ebx
mov ebp, dword [ebx]
mov ebx, dword [esp + 0xd4]
cmp ebx, ebp
jb 0x6071ca
mov ebp, ebx
mov ebx, dword [esp + 0x160]
mov dword [ebx], ebp
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x2c]
cmp edi, ebx
jae 0x608060
lea ebx, [ebp + esi*8 + 8]
mov dword [esp + 0x15c], ebx
movzx ebp, byte [ebx]
movzx ebx, byte [esp + 0xd8]
and ebx, 2
or ebp, ebx
mov ebx, dword [esp + 0x15c]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x2c]
cmp edi, ebx
jae 0x608057
lea ebx, [ebp + esi*8 + 0x10]
mov dword [esp + 0x158], ebx
mov ebp, dword [ebx]
mov ebx, dword [esp + 0xe0]
cmp ebx, ebp
jg 0x60722f
mov ebp, ebx
mov ebx, dword [esp + 0x158]
mov dword [ebx], ebp
mov ebx, dword [eax + 0x30]
mov ebp, dword [eax + 0x2c]
cmp edi, ebx
jae 0x60804e
lea ebx, [ebp + esi*8 + 0x14]
mov ebp, dword [ebx]
mov esi, ebx
mov ebx, dword [esp + 0xe4]
cmp ebx, ebp
jg 0x60725b
mov ebp, ebx
mov dword [esi], ebp
mov ebp, ecx
mov ebx, edi
jmp 0x60706a
mov edx, dword [eax + 0x34]
lea ecx, [ebp + 1]
cmp edx, ecx
jb 0x608049
mov dword [eax + 0x30], ecx
mov esi, dword [esp + 0x294]
xor edx, edx
lea edx, [edx + edx*2 + 3]
movzx edx, dl
inc edx
mov ebx, dword [eax + 0x2c]
mov ebp, dword [eax + 0x30]
mov dword [esp + 0x8c], ebp
xor ecx, ecx
jmp 0x6072b4
lea ebx, [edi + 0x18]
mov ebp, dword [esp + 0x88]
inc ebp
mov esi, dword [esp + 0x294]
mov ecx, ebp
mov ebp, dword [esp + 0x8c]
cmp ecx, ebp
jge 0x607602
mov dword [esp + 0x88], ecx
lea edi, [esp + 0xb8]
mov esi, ebx
call fcn.004664c4
movzx ecx, byte [esp + 0xc0]
test cl, 1
je 0x6072f6
cmp dword [esp + 0xbc], 1
jne 0x6072f6
mov ecx, ebp
mov edi, ebx
xor ebp, ebp
lea ebx, [0x7082a9]
jmp 0x607347
mov ecx, ebp
mov ebp, dword [esp + 0xbc]
nop
nop
cmp ebp, 0x10000
jb 0x607313
shr ebp, 0x10
mov esi, 0x10
jmp 0x607315
xor esi, esi
cmp ebp, 0x100
jb 0x607323
shr ebp, 8
add esi, 8
cmp ebp, 0x100
jae 0x60803d
mov edi, ebx
lea ebx, [0x7082a9]
movzx ebp, byte [ebx + ebp]
add ebp, esi
cmp ebp, 8
jle 0x607347
mov ebp, 8
mov ebx, dword [esp + 0xbc]
test ebx, ebx
je 0x607299
lea ebx, [ebp + edx]
cmp ebx, 0x1f
jge 0x607299
mov dword [esp + 0x168], edi
mov dword [esp + 0x4c], edx
mov dword [esp + 0x70], 0
mov ebp, dword [esp + 0x16c]
mov esi, ebx
mov ebx, dword [esp + 0x170]
mov dword [esp + 0x174], ebp
mov dword [esp + 0x178], ebx
xor ebx, ebx
xor ebp, ebp
jmp 0x607d70
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x6073da
movzx ebx, byte [esp + 0xc0]
test bl, 0x10
je 0x6073da
mov dword [esp + 0x80], esi
mov ebx, dword [esp + 0x16c]
mov edx, dword [esp + 0x170]
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], edx
xor edx, edx
jmp 0x607ed3
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x6073f1
movzx ebx, byte [esp + 0xc0]
test bl, 2
je 0x607299
mov ebx, edi
lea edi, [esp + 0xe8]
xor eax, eax
call fcn.00465fe7
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0xe8], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xec], ecx
mov ecx, dword [esp + 0xc8]
mov eax, ebx
mov ebx, dword [esp + 0xcc]
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf4], ebx
movzx ecx, byte [esp + 0xc0]
test cl, 4
sete cl
mov byte [esp + 0x105], cl
movzx ecx, byte [esp + 0xc0]
test cl, 8
sete cl
mov byte [esp + 0x106], cl
movzx ecx, byte [esp + 0xc0]
test cl, 0x20
setne cl
mov byte [esp + 0x107], cl
movzx ecx, byte [esp + 0xc0]
test cl, 0x40
setne cl
mov byte [esp + 0x108], cl
movzx ecx, byte [esp + 0xc0]
test cl, 1
je 0x6074c6
cmp dword [esp + 0xbc], 1
jne 0x6074c6
mov dword [esp + 0xf8], 0x1f
mov dword [esp + 0xfc], 0x80000000
mov ebx, dword [esp + 0x294]
mov edi, ebp
mov esi, edx
jmp 0x60752a
mov dword [esp + 0xf8], edx
test esi, esi
jl 0x607ecb
test edx, edx
jl 0x607ecb
cmp edx, 0x20
sbb ebx, ebx
mov dword [esp + 0x7c], ebx
mov ecx, esi
mov edi, ebp
mov ebp, 1
shl ebp, cl
mov dword [esp + 0x78], ebp
mov ecx, edx
mov ebp, 1
shl ebp, cl
and ebp, ebx
mov ebx, dword [esp + 0x78]
sub ebx, ebp
mov dword [esp + 0xfc], ebx
mov ebp, dword [esp + 0xc4]
shl ebp, cl
mov ecx, ebx
mov ebx, dword [esp + 0x7c]
and ebp, ebx
and ecx, ebp
mov ebx, dword [esp + 0x294]
or dword [ebx + 0x44], ecx
mov ecx, dword [esp + 0xf8]
test ecx, ecx
jl 0x607ec6
cmp ecx, 0x20
sbb edx, edx
mov ebp, 1
shl ebp, cl
and edx, ebp
and edx, dword [esp + 0xfc]
mov dword [esp + 0x100], edx
xor edi, 1
xchg edi, eax
mov byte [esp + 0x104], al
xchg edi, eax
mov edx, dword [ebx + 0x34]
inc edx
mov ebp, dword [ebx + 0x30]
mov ecx, ebx
mov ebx, dword [ebx + 0x38]
cmp ebx, edx
jae 0x6075d5
mov dword [esp + 0x74], esi
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6d8920]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x294]
mov dword [ebx + 0x38], edx
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x6075bc
mov dword [ebx + 0x30], eax
jmp 0x6075c4
lea edi, [ebx + 0x30]
call fcn.00465d80
mov esi, dword [esp + 0x74]
mov edx, ecx
mov ebp, eax
mov eax, dword [esp + 0x168]
mov ecx, ebx
mov dword [ecx + 0x34], edx
lea ebx, [edx + edx*8]
lea edi, [ebp + ebx*4 - 0x24]
mov edx, esi
lea esi, [esp + 0xe8]
call fcn.004664a6
mov ecx, dword [esp + 0x8c]
mov edi, eax
mov eax, dword [esp + 0x290]
jmp 0x607299
mov dword [eax + 0x30], 0
nop
nop
mov edx, dword [eax + 0x48]
mov ebx, dword [eax + 0x14]
mov ebp, dword [eax + 0x1c]
mov ecx, edx
mov edx, dword [eax + 0x18]
inc edx
cmp ebp, edx
jae 0x60768d
mov dword [esp + 0x8c], ecx
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x6b2bc0]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x290]
mov dword [ebx + 0x1c], edx
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x60766c
mov dword [ebx + 0x14], eax
jmp 0x607674
lea edi, [ebx + 0x14]
call fcn.00465d80
mov esi, dword [esp + 0x294]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x290]
mov ecx, dword [esp + 0x8c]
mov dword [eax + 0x18], edx
lea ebp, [ebx + edx*8 - 4]
mov dword [ebp], ecx
lea edi, [ebx + edx*8 - 8]
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x6076ad
mov dword [edi], 0
jmp 0x6076b8
mov ecx, eax
xor eax, eax
call fcn.00465d80
mov eax, ecx
inc dword [eax + 0x48]
nop
nop
mov edx, dword [eax + 0x4c]
mov ebx, dword [eax + 0x20]
mov ebp, dword [eax + 0x28]
mov ecx, edx
mov edx, dword [eax + 0x24]
inc edx
cmp ebp, edx
jae 0x60773f
mov dword [esp + 0x8c], ecx
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x6b2bc0]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x290]
mov dword [ebx + 0x28], edx
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x60771e
mov dword [ebx + 0x20], eax
jmp 0x607726
lea edi, [ebx + 0x20]
call fcn.00465d80
mov esi, dword [esp + 0x294]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x290]
mov ecx, dword [esp + 0x8c]
mov dword [eax + 0x24], edx
lea ebp, [ebx + edx*8 - 4]
mov dword [ebp], ecx
lea edi, [ebx + edx*8 - 8]
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x60775f
mov dword [edi], 0
jmp 0x60776a
mov ecx, eax
xor eax, eax
call fcn.00465d80
mov eax, ecx
inc dword [eax + 0x4c]
mov edx, dword [esp + 0x16c]
mov ebx, dword [esp + 0x170]
mov dword [esp + 0x174], edx
mov dword [esp + 0x178], ebx
xor ecx, ecx
jmp 0x60778e
inc ecx
cmp ecx, 2
jge 0x6077b6
mov dword [esp + 0x34], ecx
mov edx, dword [esp + ecx*4 + 0x174]
mov dword [esp + 0x138], edx
mov ebx, 0
mov ebp, 0
mov edi, 0
jmp 0x6077d3
add esp, 0x28c
ret
mov ebx, dword [esp + 0x44]
inc ebx
cmp ecx, 2
mov edx, dword [esp + 0x138]
mov ebp, dword [esp + 0x88]
jae 0x607d5d
mov dword [esp + 0x58], ebp
lea ebp, [eax + ecx*4 + 0x48]
cmp dword [ebp], ebx
jle 0x60778d
mov dword [esp + 0x44], ebx
mov dword [esp + 0x40], edi
movzx ebp, word [esp + ecx*2 + 0x48]
cmp bp, 0xffff
je 0x607868
mov word [esp + 0x26], bp
lea ebp, [esp + ecx*4 + 0x98]
cmp dword [ebp], ebx
jne 0x607868
mov eax, dword [esp + ecx*4 + 0x298]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
movzx ebx, word [esp + 0x26]
mov word [esp + 0xc], bx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], 0x80000000
mov dword [esp + 0x18], 0x101
mov dword [esp + 0x1c], 0x20202020
call fcn.00608300
mov eax, dword [esp + 0x290]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x138]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x294]
mov edi, dword [esp + 0x40]
mov ebp, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov dword [esp + 0x8c], edx
mov dword [esp + 0xb0], eax
xor eax, eax
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xb0]
jmp 0x607b80
lea edx, [ecx + ecx*2]
mov dword [esp + 0x8c], edx
mov ebx, dword [esi + edx*4]
mov dword [esp + 0x144], ebx
mov ebp, dword [esi + edx*4 + 4]
mov ebx, dword [esi + edx*4 + 8]
mov dword [esp + 0x54], ebx
lea ebx, [esi + edx*4]
mov dword [esp + 0x154], ebx
mov ebx, dword [esp + 0x58]
cmp ebx, ebp
jge 0x6079fe
ja 0x607d54
mov dword [esp + 0x50], ebp
mov eax, dword [esp + 0x54]
sub eax, ebx
mov dword [esp + 0x30], eax
mov edx, eax
neg eax
mov esi, ebx
shl ebx, 4
sar eax, 0x1f
and ebx, eax
mov eax, dword [esp + 0x144]
add ebx, eax
mov dword [esp + 0x134], ebx
mov dword [esp], ebx
sub ebp, esi
mov dword [esp + 0x2c], ebp
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
call fcn.004098b0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 0
lea ecx, [0x6080c0]
mov dword [esp + 0x184], ecx
mov edx, dword [esp + 0x134]
mov dword [esp + 0x188], edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x18c], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x190], edx
lea edx, [0x690140]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [esp + 0x184]
mov dword [esp + 8], eax
call fcn.0048af00
mov ebp, dword [esp + 0x58]
lea eax, [ebp + 1]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x144]
jmp 0x607c8d
lea ecx, [ebp + 1]
mov ebx, dword [esp + 0x54]
cmp ebx, ecx
jb 0x607d3c
mov ebp, dword [esp + 0x8c]
mov eax, edx
mov edx, dword [esp + 0x294]
mov dword [edx + ebp*4 + 4], ecx
mov dword [edx + ebp*4 + 8], ebx
mov ebx, dword [0x1eaa9f0]
test ebx, ebx
jne 0x6079da
mov dword [edx + ebp*4], eax
jmp 0x6079e6
mov edi, dword [esp + 0x154]
call fcn.00465d80
mov eax, dword [esp + 0x290]
mov ecx, dword [esp + 0x34]
mov edx, ebp
mov esi, dword [esp + 0x294]
mov edi, dword [esp + 0x40]
mov ebx, dword [esi + edx*4 + 4]
mov dword [esp + 0x88], ebx
mov ebp, dword [eax + edx*4 + 0x14]
mov ebx, dword [eax + edx*4 + 0x18]
cmp edi, ebx
jge 0x607b52
jae 0x607d33
lea ebx, [ebp + edi*8 + 4]
mov edx, dword [esp + 0x44]
cmp dword [ebx], edx
jne 0x607b46
lea ebx, [ebp + edi*8]
mov ebx, dword [ebx]
mov dword [esp + 0x140], ebx
mov ebp, dword [esp + 0x8c]
mov edx, dword [esi + ebp*4 + 0x18]
mov dword [esp + 0x150], edx
mov ebx, dword [esi + ebp*4 + 0x20]
mov edx, dword [esi + ebp*4 + 0x1c]
inc edx
lea ebp, [esi + ebp*4 + 0x18]
cmp ebx, edx
jb 0x607a68
mov ebx, dword [esp + 0x150]
jmp 0x607ae7
mov dword [esp + 0x14c], ebp
mov eax, dword [esp + 0x150]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6b2c20]
mov dword [esp + 0x10], eax
call fcn.0044be60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x8c]
mov ebp, dword [esp + 0x294]
mov dword [ebp + ebx*4 + 0x20], edx
mov edx, dword [0x1eaa9f0]
test edx, edx
jne 0x607ac6
mov dword [ebp + ebx*4 + 0x18], eax
jmp 0x607ad2
mov edi, dword [esp + 0x14c]
call fcn.00465d80
mov esi, ebp
mov edi, dword [esp + 0x40]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x290]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x80], edx
mov ebp, dword [esp + 0x8c]
mov dword [esi + ebp*4 + 0x1c], edx
lea ebp, [ebx + edx*8 - 4]
mov edx, dword [esp + 0x88]
mov dword [ebp], edx
mov ebp, dword [esp + 0x80]
lea ebx, [ebx + ebp*8 - 8]
mov ebp, dword [0x1eaa9f0]
test ebp, ebp
jne 0x607b27
mov ebp, dword [esp + 0x140]
mov dword [ebx], ebp
jmp 0x607b40
mov ebp, edi
mov edi, ebx
mov eax, dword [esp + 0x140]
call fcn.00465d80
mov eax, dword [esp + 0x290]
mov edi, ebp
inc edi
jmp 0x6077bd
mov edx, dword [esp + 0x88]
jmp 0x6077bd
mov edx, dword [esp + 0x88]
jmp 0x6077bd
add ebp, 0x24
lea ecx, [ebx + 1]
mov edx, edi
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x294]
mov edi, dword [esp + 0x40]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x88]
cmp ebx, edx
jge 0x607891
lea edi, [esp + 0x10c]
mov esi, ebp
call fcn.004664a6
mov ecx, dword [esp + 0x34]
mov esi, ecx
lea ecx, [esp + ecx*4 + 0x114]
mov edi, edx
mov edx, dword [esp + 0x44]
cmp dword [ecx], edx
jne 0x607b5e
mov dword [esp + 0x168], ebp
movzx eax, word [esp + esi*2 + 0x110]
mov ecx, dword [esp + esi*4 + 0x298]
mov edx, dword [esp + 0x120]
movzx ebx, byte [esp + 0x129]
movzx ebp, byte [esp + 0x12a]
movzx edi, byte [esp + 0x12b]
xchg edi, eax
mov byte [esp + 0x23], al
xchg edi, eax
movzx edi, byte [esp + 0x12c]
xchg edi, eax
mov byte [esp + 0x22], al
xchg edi, eax
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x84], edi
mov edi, dword [esp + 0x294]
mov dword [esp], edi
mov edi, dword [esp + 0x138]
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov word [esp + 0xc], ax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov byte [esp + 0x18], bl
xchg ebp, eax
mov byte [esp + 0x19], al
xchg ebp, eax
movzx eax, byte [esp + 0x23]
mov byte [esp + 0x1a], al
movzx eax, byte [esp + 0x22]
mov byte [esp + 0x1b], al
mov eax, dword [esp + 0x84]
mov dword [esp + 0x1c], eax
call fcn.00608300
mov eax, dword [esp + 0x290]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x168]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x8c]
jmp 0x607b5e
inc eax
mov ecx, dword [esp + 0x50]
mov ebp, ebx
cmp eax, ecx
jge 0x6079a4
jae 0x607d4f
mov ebx, eax
shl eax, 4
lea esi, [eax + edx]
mov edi, ebx
movzx ebx, word [edx + eax]
cmp ebp, ecx
jae 0x607d48
mov dword [esp + 0x60], ebp
shl ebp, 4
mov dword [esp + 0x88], ebp
add ebp, edx
cmp word [ebp], bx
je 0x607ce5
mov ebx, dword [esp + 0x60]
lea eax, [ebx + 1]
cmp ecx, eax
jbe 0x607d43
mov ebx, eax
shl eax, 4
lea ebp, [edx + eax]
mov eax, edi
mov edi, ebp
call fcn.004664d8
jmp 0x607c86
mov ebx, dword [esp + 0x88]
mov ebp, dword [edx + ebx + 0xc]
mov esi, ebx
lea ebx, [edx + eax + 0xc]
or ebp, dword [ebx]
mov dword [edx + esi + 0xc], ebp
movzx ebx, byte [esi + edx + 2]
test bl, bl
je 0x607d0c
movzx ebx, byte [eax + edx + 2]
jmp 0x607d0e
xor ebx, ebx
mov byte [edx + esi + 2], bl
movzx ebx, byte [esi + edx + 3]
test bl, bl
je 0x607d22
movzx ebx, byte [eax + edx + 3]
jmp 0x607d24
xor ebx, ebx
mov byte [edx + esi + 3], bl
mov eax, edi
mov ebx, dword [esp + 0x60]
jmp 0x607c86
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov edx, ebx
call fcn.00465e40
call fcn.00465e00
mov eax, ebp
call fcn.00465e00
call fcn.00465e00
mov eax, ebx
mov ecx, ebp
call fcn.00465e60
mov eax, ecx
mov ecx, 2
call fcn.00465e00
inc ebx
mov ebp, edx
mov edx, dword [esp + 0x4c]
cmp ebx, 2
jge 0x60739d
mov edx, dword [esp + ebx*4 + 0x174]
jae 0x608031
xchg ebp, eax
mov byte [esp + 0x21], al
xchg ebp, eax
mov ebp, dword [esp + ebx*4 + 0x90]
cmp dword [esp + 0xb8], ebp
jne 0x607daa
mov ebp, dword [esp + ebx*4 + 0xc8]
mov dword [esp + ebx*4 + 0x98], ebp
mov dword [esp + 0x3c], ebx
mov ebp, dword [eax + ebx*4 + 0x38]
mov ebx, dword [eax + ebx*4 + 0x40]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xb8]
cmp ebp, 0xffff
jne 0x607dd3
mov edx, 0xffffffff
jmp 0x607e9c
mov dword [esp + 0x13c], edx
mov dword [esp + 0x6c], ebx
mov ebx, dword [edx + 4]
mov edx, dword [edx]
cmp ebx, ebp
jbe 0x608028
shl ebp, 5
add edx, ebp
mov ebx, edi
lea edi, [esp + 0x1a8]
mov ebp, esi
mov esi, edx
call fcn.004664ba
mov ecx, dword [esp + 0x5c]
movzx ecx, cx
mov edx, dword [esp + 0x1b8]
mov esi, ebp
lea ebp, [esp + 0x1a8]
cmp dword [ebp + 0x14], ecx
jg 0x607e37
mov edx, dword [esp + 0x1a8]
test edx, edx
je 0x607e31
mov ebp, dword [edx + 4]
mov edx, dword [edx + 8]
jmp 0x607e42
xor edx, edx
xor ebp, ebp
jmp 0x607e42
shl ecx, 4
mov ebp, dword [edx + ecx + 4]
mov edx, dword [edx + ecx + 8]
mov dword [esp + 0x28], edx
mov dword [esp + 0x130], ebp
mov ecx, dword [esp + 0x13c]
mov edi, dword [esp + 0x6c]
mov dword [esp + 0xa0], eax
xor eax, eax
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xa0]
jmp 0x607fe8
mov ecx, dword [esp + 0x8c]
mov edi, dword [esp + 0x168]
movzx edx, word [esp + 0x24]
jmp 0x607e9c
mov ecx, dword [esp + 0x8c]
mov edi, dword [esp + 0x168]
mov edx, 0xffffffff
mov ebx, dword [esp + 0x3c]
mov word [esp + ebx*2 + 0x70], dx
movzx ebp, byte [esp + 0x21]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x607eba
mov edx, 1
jmp 0x607d69
cmp dx, 0xffff
setne dl
jmp 0x607d69
call fcn.00435b60
call fcn.00435b60
inc edx
mov ebp, ebx
cmp edx, 2
jge 0x607f65
mov dword [esp + 0x38], edx
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov ebx, dword [esp + edx*4 + 0x174]
mov ebp, dword [esp + 0xb8]
mov dword [esp + 0x68], ebp
nop
mov edx, dword [ebx + 0xc]
mov ebx, dword [ebx + 0x10]
mov dword [esp + 0xa8], eax
xor eax, eax
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0xa8]
jmp 0x607f8f
mov edx, dword [esp + 0x38]
cmp edx, 2
mov ecx, dword [esp + 0x8c]
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x168]
jmp 0x607f3f
mov edx, dword [esp + 0x38]
cmp edx, 2
mov ebp, 0xffffffff
jae 0x607fb7
mov word [esp + edx*2 + 0x70], bp
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x607f59
mov ebx, 1
jmp 0x607ed0
cmp bp, 0xffff
setne bl
jmp 0x607ed0
mov edx, dword [esp + 0x4c]
jmp 0x6073da
add edx, 0x14
inc ebp
mov ecx, dword [esp + 0x8c]
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x168]
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x68]
mov ebp, dword [esp + 0x64]
cmp ebp, ebx
jge 0x607f33
lea edi, [esp + 0x194]
mov esi, edx
call fcn.004664ce
mov ecx, dword [esp + 0x68]
cmp dword [esp + 0x1a4], ecx
jne 0x607f6e
jmp 0x607f15
mov eax, edx
mov ecx, 2
call fcn.00465e00
mov edx, dword [esp + 0x80]
inc edx
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x130]
mov ebx, dword [esp + 0x168]
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x80]
cmp ebx, edx
jge 0x607e89
movzx ebp, word [ebp + ebx*2]
mov word [esp + 0x24], bp
mov edx, dword [ecx + 0x10]
mov ebx, dword [ecx + 0xc]
movzx ebp, bp
cmp edx, ebp
jbe 0x60801f
lea edx, [ebp + ebp*4]
lea edx, [ebx + edx*4 + 0x10]
cmp dword [edx], edi
jne 0x607fc3
jmp 0x607e74
mov eax, ebp
mov ecx, edx
call fcn.00465e00
mov eax, ebp
mov ecx, ebx
call fcn.00465e00
mov eax, ebx
mov ecx, 2
call fcn.00465e00
mov eax, ebp
mov ecx, 0x100
call fcn.00465e10
call fcn.00465e40
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov eax, edi
mov ecx, ebx
call fcn.00465e00
mov eax, ebx
mov ecx, ebp
call fcn.00465e00
mov eax, ebp
mov ecx, ebx
call fcn.00465e00
mov eax, ebp
call fcn.00465e00
mov eax, ebx
call fcn.00465e00
mov eax, ebp
call fcn.00465e00
mov ecx, ebp
call fcn.00465e00
nop
call fcn.004649b0
jmp fcn.00606d70