Function at 0x610726
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x84
push esi
push edi
mov edi, dword [ebp + 0xc]
xor eax, eax
push edi
mov esi, ebx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], eax
call fcn.00610647
xor ax, ax
mov ecx, ebx
call fcn.0060f208
push edi
push dword [ebp + 8]
push ebx
call fcn.0060f861
push edi
lea esi, [ebp - 0x30]
call fcn.0060ef03
test eax, eax
mov eax, dword [ebp - 0x30]
jl 0x61085b
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
mov esi, eax
test esi, esi
mov dword [ebp - 0x28], esi
je 0x61078e
mov eax, dword [esi + 0x24]
test eax, eax
je 0x61078e
add eax, esi
mov dword [ebp - 0x3c], eax
jmp 0x610795
mov dword [ebp - 0x3c], 0x420dc8
mov eax, dword [edi]
mov dword [ebp - 0x18], eax
lea eax, [edi + 4]
mov ecx, ebx
mov dword [ebp - 8], eax
call fcn.0060f22a
mov ax, 1
mov ecx, ebx
call fcn.0060f208
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xfffe0201
mov edx, 0xffff0000
jne 0x6107c9
push 0x408ad8
jmp 0x610812
cmp ecx, 0xfffe02ff
jne 0x6107d8
push 0x408ac8
jmp 0x610812
cmp ecx, 0xfffe03ff
jne 0x6107e7
push 0x408ab8
jmp 0x610812
cmp ecx, 0xffff0201
jne 0x6107f6
push 0x408aac
jmp 0x610812
cmp ecx, 0xffff02ff
jne 0x610805
push 0x408a9c
jmp 0x610812
cmp ecx, 0xffff03ff
jne 0x61081c
push 0x408a8c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
jmp 0x61088d
mov eax, ecx
and eax, edx
cmp eax, 0x54580000
je 0x611849
cmp eax, 0xfffe0000
je 0x610876
cmp eax, edx
je 0x610867
mov ecx, ebx
call fcn.0060f22a
xor ax, ax
mov ecx, ebx
call fcn.0060f208
push 0x408a54
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov dword [ebp - 0x38], 0x80004005
jmp 0x611854
movzx eax, cl
push eax
movzx eax, ch
push eax
push 0x408a44
jmp 0x610883
movzx eax, cl
push eax
movzx eax, ch
push eax
push 0x408a34
mov ecx, ebx
call fcn.0060f1b6
add esp, 0xc
xor eax, eax
cmp esi, eax
mov dword [ebp + 8], eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], eax
je 0x6108cf
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x20]
add eax, esi
mov dword [ebp - 0x54], eax
mov eax, dword [esi + 0x14]
add ecx, esi
lea eax, [ecx + eax*8]
mov dword [ebp - 0x50], eax
mov eax, dword [esi + 0x1c]
imul eax, eax, 0x14
add edx, esi
add eax, edx
mov edi, ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x24], edi
jmp 0x6108d2
mov edi, dword [ebp - 0x24]
and dword [ebp - 0x20], 0
and dword [ebp - 0x34], 0
mov dword [ebp - 0x44], 0xffff
jmp 0x6117b6
cmp dword [ebp - 0xc], 0xfffe
jne 0x610960
shr eax, 0x10
add ecx, 4
test eax, eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 8], ecx
je 0x6117b9
cmp dword [ecx], 0x54584554
jne 0x610952
xor ax, ax
mov ecx, ebx
call fcn.0060f208
cmp dword [ebp - 0x10], 0
jbe 0x610933
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x1c], eax
push 0x408a30
mov ecx, ebx
call fcn.0060f1b6
dec dword [ebp - 0x1c]
pop ecx
jne 0x610921
mov eax, dword [ebp - 8]
add eax, 4
push eax
push 0x408a24
mov ecx, ebx
call fcn.0060f1b6
pop ecx
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x14]
lea ecx, [ecx + eax*4]
mov dword [ebp - 8], ecx
jmp 0x6117b9
test esi, esi
je 0x610abe
cmp edi, dword [ebp - 0x50]
jae 0x610abe
sub ecx, dword [ebp + 0xc]
mov eax, dword [edi + 4]
sar ecx, 2
shr eax, 2
cmp ecx, eax
mov dword [ebp - 0x14], ecx
jne 0x610aa4
movzx eax, word [edi + 2]
cmp ax, word [ebp - 0x44]
je 0x610a0e
cmp ax, 0xffff
je 0x6109ff
push 0x462bec
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ax, 1
mov ecx, ebx
call fcn.0060f208
push 0x408a1c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov ax, 3
mov ecx, ebx
call fcn.0060f208
movzx eax, word [edi + 2]
mov ecx, dword [ebp - 0x54]
mov eax, dword [ecx + eax*4]
add eax, esi
push eax
movzx eax, word [edi]
push eax
push 0x408a10
mov ecx, ebx
call fcn.0060f1b6
add esp, 0xc
mov ecx, ebx
call fcn.0060f22a
movzx eax, word [edi]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x34], eax
movzx eax, word [edi + 2]
mov dword [ebp - 0x44], eax
movzx eax, word [edi]
jmp 0x610aa1
movzx eax, word [edi]
cmp ax, word [ebp - 0x20]
je 0x610aa4
movzx edx, word [ebp - 0x20]
movzx ecx, ax
lea esi, [edx + 2]
cmp ecx, esi
jg 0x610a42
lea esi, [ecx + 2]
cmp esi, edx
jl 0x610a42
movzx edx, word [ebp - 0x34]
lea esi, [edx + 0xa]
cmp ecx, esi
jg 0x610a42
add ecx, 0xa
cmp ecx, edx
jge 0x610a9b
push 0x462bec
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ax, 1
mov ecx, ebx
call fcn.0060f208
push 0x408a1c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov ax, 3
mov ecx, ebx
call fcn.0060f208
movzx eax, word [edi]
push eax
push 0x408a0c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
pop ecx
mov ecx, ebx
call fcn.0060f22a
movzx eax, word [edi]
movzx ecx, ax
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x14]
movzx eax, ax
mov dword [ebp - 0x20], eax
mov eax, dword [edi + 4]
shr eax, 2
cmp ecx, eax
jb 0x610abe
mov eax, dword [edi + 0xc]
add edi, 8
shr eax, 2
cmp ecx, eax
jae 0x610aae
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x10], 0
je 0x610af7
mov eax, dword [ebp - 0xc]
cmp eax, 0x2a
je 0x610adb
cmp eax, 0x2b
je 0x610adb
cmp eax, 0x27
je 0x610adb
cmp eax, 0x1d
jne 0x610ade
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0
jbe 0x610af7
mov esi, dword [ebp - 0x10]
push 0x408a30
mov ecx, ebx
call fcn.0060f1b6
dec esi
pop ecx
jne 0x610ae7
mov edi, dword [ebp - 8]
test dword [edi], 0x40000000
mov ecx, ebx
je 0x610b2c
mov ax, 2
call fcn.0060f208
push 0x408a04
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
cmp dword [ebp + 8], 0
je 0x610b37
dec dword [ebp + 8]
jmp 0x610b37
push 0x408644
call fcn.0060f1b6
pop ecx
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x610b90
cmp eax, 0x19
je 0x610b90
cmp eax, 0x1a
je 0x610b90
cmp eax, 0x1b
je 0x610b90
cmp eax, 0x1c
je 0x610b90
cmp eax, 0x1d
je 0x610b90
cmp eax, 0x1e
je 0x610b90
cmp eax, 0x26
je 0x610b90
cmp eax, 0x27
je 0x610b90
cmp eax, 0x28
je 0x610b90
cmp eax, 0x29
je 0x610b90
cmp eax, 0x2a
je 0x610b90
cmp eax, 0x2b
je 0x610b90
cmp eax, 0x2c
je 0x610b90
cmp eax, 0x2d
je 0x610b90
cmp eax, 0xfffd
je 0x610b90
xor esi, esi
inc esi
jmp 0x610b92
xor esi, esi
and dword [ebp - 0x14], 0
test dword [edi], 0x10000000
je 0x610c1c
test esi, esi
mov edi, dword [ebp - 8]
je 0x610baa
add edi, 8
jmp 0x610bad
add edi, 4
test dword [edi], 0x80000000
je 0x610c1c
mov ax, 2
mov ecx, ebx
call fcn.0060f208
push 0x45ccb4
mov ecx, ebx
call fcn.0060f1b6
mov eax, dword [edi]
and eax, 0xf000000
cmp eax, 0xd000000
pop ecx
jne 0x610be8
push 0x408a00
mov ecx, ebx
call fcn.0060f1b6
pop ecx
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x18]
push 0
push dword [edi]
push ebx
call fcn.0060f2e5
mov edi, dword [edi]
push ebx
call fcn.0060f241
push 0x4089fc
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov dword [ebp - 0x14], 1
cmp dword [ebp - 0x14], 0
mov edi, dword [ebp + 8]
je 0x610c28
inc dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov eax, 0xfffd
cmp ecx, eax
ja case.0x610c47.49
je 0x61106a
cmp ecx, 0x60
ja case.0x610c47.49
jmp dword [ecx*4 + 0x61186a]
push 0x45b8a0
jmp 0x611076
push 0x45b7ac
jmp 0x611076
push 0x45b7a4
jmp 0x611076
push 0x45b79c
jmp 0x611076
push 0x45b8a4
jmp 0x611076
push 0x45b918
mov ecx, ebx
call fcn.0060f1b6
movzx eax, word [ebp - 0x18]
cmp eax, 0x2000
pop ecx
jb 0x61107e
inc dword [ebp + 8]
jmp 0x61107e
push 0x45b914
mov ecx, ebx
call fcn.0060f1b6
inc dword [ebp + 8]
jmp 0x61107d
push 0x45b870
jmp 0x610ca9
push 0x45b910
jmp 0x610ca9
push 0x45b90c
jmp 0x610ca9
push 0x45b908
jmp 0x610ca9
push 0x4572a0
jmp 0x610ca9
push 0x45b904
jmp 0x610ca9
push 0x45b900
jmp 0x610ca9
push 0x45b8fc
jmp 0x610ca9
push 0x45b8f8
jmp 0x610ca9
push 0x4573ac
jmp 0x610ca9
push 0x4573a8
jmp 0x610ca9
push 0x45b8f4
jmp 0x610ca9
push 0x45b8f0
jmp 0x610ca9
push 0x457354
jmp 0x610ca9
push 0x457404
jmp 0x610ca9
push 0x457288
mov ecx, ebx
call fcn.0060f1b6
add dword [ebp + 8], 3
jmp 0x61107d
push 0x45b89c
mov ecx, ebx
call fcn.0060f1b6
add dword [ebp + 8], 2
jmp 0x61107d
push 0x45b898
jmp 0x610d26
push 0x45b894
jmp 0x610d26
push 0x45b7bc
jmp 0x610ca9
push 0x45b7b4
jmp 0x610ca9
push 0x45b7b0
jmp 0x610ca9
push 0x45b754
jmp 0x610ca9
push 0x45b730
jmp 0x610ca9
push 0x457234
mov ecx, ebx
call fcn.0060f1b6
add dword [ebp + 8], 8
jmp 0x61107d
push 0x4572d0
mov ecx, ebx
call fcn.0060f1b6
movzx eax, word [ebp - 0x18]
cmp eax, 0x2000
pop ecx
jb 0x610c9c
add dword [ebp + 8], 3
jmp 0x61107e
push 0x45b8ec
mov ecx, ebx
call fcn.0060f1b6
movzx eax, word [ebp - 0x18]
cmp eax, 0x2000
pop ecx
jb 0x610c9c
add dword [ebp + 8], 2
jmp 0x61107e
push 0x45b8e0
mov ecx, ebx
call fcn.0060f1b6
add dword [ebp + 8], 4
jmp 0x61107d
push 0x45b8d8
jmp 0x610d26
push 0x45b8d0
jmp 0x610def
push 0x45b8c8
jmp 0x610d26
push 0x45b8c0
jmp 0x610d3b
push 0x459ce0
jmp 0x610d3b
push 0x45b8b8
jmp 0x610d26
push 0x459cb4
mov ecx, ebx
call fcn.0060f1b6
add dword [ebp + 8], 3
inc dword [ebp - 0x10]
jmp 0x61107d
push 0x45b8b4
jmp 0x610ca9
push 0x45b8ac
jmp 0x610d3b
push 0x45b890
jmp 0x610e3d
push 0x45b888
jmp 0x610d3b
push 0x45760c
jmp 0x610e3d
push 0x4575b0
mov ecx, ebx
call fcn.0060f1b6
inc dword [ebp + 8]
jmp 0x610e48
push 0x45b880
jmp 0x610ca9
push 0x4574a8
jmp 0x610ca9
push 0x4574a8
jmp 0x610d26
push 0x45b854
mov ecx, ebx
call fcn.0060f1b6
movzx eax, word [ebp - 0x18]
cmp eax, 0x2000
pop ecx
ja 0x610de1
jmp 0x610c9c
push 0x45b830
mov ecx, ebx
call fcn.0060f1b6
inc dword [ebp - 4]
jmp 0x61107d
push 0x45b828
jmp 0x610ed1
push 0x45b81c
jmp 0x610ed1
push 0x45b810
jmp 0x610ed1
push 0x45b790
jmp 0x610ed1
push 0x45b728
mov ecx, ebx
call fcn.0060f1b6
add dword [ebp - 4], 2
jmp 0x61107d
push 0x45b738
mov ecx, ebx
call fcn.0060f1b6
inc dword [ebp - 4]
jmp 0x610d42
push 0x45b804
jmp 0x610ed1
push 0x45b7f8
jmp 0x610ed1
push 0x45b7ec
jmp 0x610ed1
push 0x45b7e0
jmp 0x610ed1
push 0x45b7d4
jmp 0x610ed1
push 0x45b7c4
jmp 0x610ed1
push 0x45b774
jmp 0x610ed1
push 0x45b764
jmp 0x610ed1
push 0x45b784
jmp 0x610ed1
push 0x45b76c
jmp 0x610ed1
push 0x45b758
jmp 0x610ca9
push 0x45b750
jmp 0x610d3b
push 0x45b748
jmp 0x610d3b
push 0x45b744
jmp 0x610d3b
push 0x45b740
jmp 0x610d3b
push 0x4089f0
jmp 0x611076
push 0x457350
mov ecx, ebx
call fcn.0060f1b6
movzx eax, word [ebp - 0x18]
cmp eax, 0x101
pop ecx
jne 0x610c9c
add dword [ebp + 8], 0xa
jmp 0x61107e
push 0x4572c0
jmp 0x610fb8
push 0x45b8e8
mov ecx, ebx
call fcn.0060f1b6
movzx eax, word [ebp - 0x18]
cmp eax, 0x101
pop ecx
jne 0x610c9c
jmp 0x610dbc
movzx eax, word [ebp - 0x18]
cmp eax, 0x104
jb 0x61103f
mov eax, dword [ebp - 0x1c]
shl eax, 0x10
cmp eax, 0x10000
je 0x611035
cmp eax, 0x20000
mov ecx, ebx
je 0x61102b
push 0x45b848
jmp 0x610ed3
push 0x45b838
jmp 0x610ed3
push 0x45b840
jmp 0x610ed1
push 0x45b850
jmp 0x610ed1
movzx eax, word [ebp - 0x18]
cmp eax, 0x104
mov ecx, ebx
jb 0x611060
push 0x45b85c
jmp 0x610ed3
push 0x45b864
jmp 0x610ed3
push 0x45b720
jmp 0x611076
push 0x4089ec
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov edx, dword [ebp - 0x18]
mov eax, 0xffff0000
and edx, eax
cmp edx, eax
jne 0x6110a0
movzx eax, word [ebp - 0x18]
cmp eax, 0x200
jae 0x6110a0
cmp dword [ebp + 8], edi
jbe 0x6110a0
inc edi
mov dword [ebp + 8], edi
add dword [ebp - 8], 4
cmp dword [ebp - 0xc], 0x1f
jne 0x6111ac
mov edi, dword [ebp - 8]
mov eax, dword [edi]
mov ecx, eax
and ecx, 0x78000000
je 0x6110fd
cmp ecx, 0x10000000
je 0x6110f6
cmp ecx, 0x18000000
je 0x6110ed
cmp ecx, 0x20000000
mov ecx, ebx
je 0x6110e6
push 0x4089e0
call fcn.0060f1b6
jmp 0x6111a5
push 0x4089d8
jmp 0x6110dc
push 0x4089d0
mov ecx, ebx
jmp 0x6110dc
push 0x4089cc
jmp 0x6110f2
test eax, 0x7fffffff
jne 0x611110
cmp edx, 0xfffe0000
jne 0x6111a6
and eax, 0xf
cmp eax, 0xd
ja case.default.0x611118
jmp dword [eax*4 + 0x6119ee]
push 0x4089c0
jmp 0x611186
push 0x4089b0
jmp 0x611186
push 0x4089a0
jmp 0x611186
push 0x408998
jmp 0x611186
push 0x408990
jmp 0x611186
push 0x408984
jmp 0x611186
push 0x408978
jmp 0x611186
push 0x40896c
jmp 0x611186
push 0x408960
jmp 0x611186
push 0x408954
jmp 0x611186
push 0x40894c
jmp 0x611186
push 0x408944
jmp 0x611186
push 0x40893c
jmp 0x611186
push 0x408934
jmp 0x611186
push 0x4089e0
mov ecx, ebx
call fcn.0060f1b6
movzx eax, byte [edi + 2]
and eax, 0xf
pop ecx
je 0x6111a6
push eax
push 0x4596cc
mov ecx, ebx
call fcn.0060f1b6
pop ecx
pop ecx
add edi, 4
mov dword [ebp - 8], edi
cmp dword [ebp - 0xc], 0x29
je 0x6111be
cmp dword [ebp - 0xc], 0x2d
je 0x6111be
cmp dword [ebp - 0xc], 0x5e
jne 0x611203
mov eax, dword [ebp - 0x1c]
dec eax
je 0x6111f6
dec eax
je 0x6111ef
dec eax
je 0x6111e8
dec eax
je 0x6111e1
dec eax
je 0x6111da
dec eax
jne 0x611203
push 0x408930
jmp 0x6111fb
push 0x40892c
jmp 0x6111fb
push 0x408928
jmp 0x6111fb
push 0x408924
jmp 0x6111fb
push 0x408920
jmp 0x6111fb
push 0x40891c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
and dword [ebp - 0x1c], 0
test esi, esi
je 0x61134f
mov eax, dword [ebp - 8]
mov edi, dword [eax]
test edi, edi
jns 0x61134f
mov eax, edi
shr eax, 0x18
and eax, 0xf
dec eax
je 0x61125b
dec eax
je 0x611254
dec eax
je 0x61124d
sub eax, 0xa
je 0x611246
dec eax
je 0x61123f
dec eax
jne 0x611268
push 0x408918
jmp 0x611260
push 0x408914
jmp 0x611260
push 0x408910
jmp 0x611260
push 0x40890c
jmp 0x611260
push 0x408908
jmp 0x611260
push 0x408904
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, 0x100000
je 0x61127d
push 0x4088fc
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, 0x200000
je 0x611292
push 0x4088f8
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, 0x400000
je 0x6112a7
push 0x45ce9c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
push 0x459184
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ax, 2
mov ecx, ebx
call fcn.0060f208
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x18]
push 0
push edi
push ebx
call fcn.0060f2e5
mov eax, 0xf0000
mov ecx, edi
and ecx, eax
cmp ecx, eax
je 0x61133d
push 0x4085a4
mov ecx, ebx
call fcn.0060f1b6
test edi, 0x10000
pop ecx
je 0x6112fe
push 0x457448
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, 0x20000
je 0x611313
push 0x4573c0
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, 0x40000
je 0x611328
push 0x4085a0
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, 0x80000
je 0x61133d
push 0x40859c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
add dword [ebp - 8], 4
mov dword [ebp - 0x1c], 1
cmp dword [ebp - 0x14], 0
je 0x611359
add dword [ebp - 8], 4
cmp dword [ebp - 0xc], 0x51
mov esi, 0x4088f4
jne 0x6113b4
push 4
pop edi
mov ax, 2
mov ecx, ebx
call fcn.0060f208
push esi
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov ax, 3
mov ecx, ebx
call fcn.0060f208
mov eax, dword [ebp - 8]
fld dword [eax]
push ecx
push ecx
fstp qword [esp]
push 0x4088ec
mov ecx, ebx
call fcn.0060f1b6
add esp, 0xc
mov ecx, ebx
call fcn.0060f22a
add dword [ebp - 8], 4
dec edi
jne 0x611367
cmp dword [ebp - 0xc], 0x30
jne 0x611404
push 4
pop edi
mov ax, 2
mov ecx, ebx
call fcn.0060f208
push esi
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov ax, 3
mov ecx, ebx
call fcn.0060f208
mov eax, dword [ebp - 8]
push dword [eax]
mov ecx, ebx
push 0x4088e8
call fcn.0060f1b6
pop ecx
pop ecx
mov ecx, ebx
call fcn.0060f22a
add dword [ebp - 8], 4
dec edi
jne 0x6113bd
cmp dword [ebp - 0xc], 0x2f
jne 0x6115be
mov ax, 2
mov ecx, ebx
call fcn.0060f208
push esi
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
mov ax, 3
mov ecx, ebx
call fcn.0060f208
mov eax, dword [ebp - 8]
cmp dword [eax], 0
mov eax, 0x4578ec
jne 0x611446
mov eax, 0x4575d4
push eax
push 0x4580d8
mov ecx, ebx
call fcn.0060f1b6
pop ecx
pop ecx
mov ecx, ebx
call fcn.0060f22a
add dword [ebp - 8], 4
jmp 0x6115be
mov ax, 2
mov ecx, ebx
call fcn.0060f208
xor esi, esi
cmp dword [ebp - 0x1c], esi
mov eax, 0x4088f4
jne 0x611481
mov eax, 0x459184
push eax
mov ecx, ebx
call fcn.0060f1b6
mov eax, dword [ebp - 8]
pop ecx
mov ecx, dword [eax]
test cx, 0x2000
mov dword [ebp - 0x14], ecx
je 0x6114b4
movzx ecx, word [ebp - 0x18]
cmp ecx, 0x200
jb 0x6114af
add eax, 4
mov esi, dword [eax]
mov dword [ebp - 8], eax
jmp 0x6114b4
mov esi, 0xb0000000
mov edi, dword [ebp - 0x14]
and edi, 0xf000000
cmp edi, 0x1000000
je 0x611503
cmp edi, 0x3000000
je 0x611503
cmp edi, 0x5000000
je 0x611503
cmp edi, 0x6000000
je 0x6114fc
cmp edi, 0x8000000
je 0x611503
cmp edi, 0xc000000
je 0x611503
cmp edi, 0xd000000
jne 0x611510
push 0x408a00
jmp 0x611508
push 0x4088e4
jmp 0x611508
push 0x45ccd0
mov ecx, ebx
call fcn.0060f1b6
pop ecx
lea eax, [ebp - 0x2c]
push eax
push dword [ebp - 0x18]
push esi
push dword [ebp - 0x14]
push ebx
call fcn.0060f2e5
cmp edi, 0x8000000
ja 0x611568
je 0x611553
cmp edi, 0x2000000
je 0x611561
cmp edi, 0x3000000
je 0x611561
cmp edi, 0x4000000
je 0x61155a
cmp edi, 0x5000000
je 0x61155a
cmp edi, 0x7000000
jne 0x6115a3
push 0x408904
jmp 0x61159b
push 0x4088dc
jmp 0x61159b
push 0x4088d4
jmp 0x61159b
cmp edi, 0x9000000
je 0x611596
cmp edi, 0xa000000
je 0x61158f
cmp edi, 0xb000000
je 0x611588
cmp edi, 0xc000000
jne 0x6115a3
push 0x4088cc
jmp 0x61159b
push 0x4088c8
jmp 0x61159b
push 0x4088c4
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov edi, dword [ebp - 0x14]
push ebx
call fcn.0060f241
add dword [ebp - 8], 4
mov ecx, ebx
mov dword [ebp - 0x1c], 1
call fcn.0060f22a
mov eax, dword [ebp - 8]
test dword [eax], 0x80000000
jne 0x611465
cmp dword [ebp - 0x28], 0
je 0x6117a3
cmp dword [ebp - 0x40], 0
je 0x6117a3
mov esi, dword [ebp - 0x24]
sub esi, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x40]
and dword [ebp - 0xc], 0
xor eax, eax
lea edi, [ebp - 0x74]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
sar esi, 3
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x4c]
dec esi
cmp ecx, eax
jae 0x611697
sub eax, ecx
dec eax
push 0x14
lea edi, [ecx + 4]
xor edx, edx
pop ecx
div ecx
inc eax
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [edi + 8]
mov edx, dword [edi + 0xc]
imul ecx, ecx, 0xc
add edx, eax
add ecx, edx
jmp 0x611630
cmp dword [edx], esi
je 0x611636
add edx, 0xc
cmp edx, ecx
jb 0x611629
jmp 0x61168f
add edx, 4
mov dword [ebp - 0x14], edx
xor ecx, ecx
mov edx, dword [ebp - 0x14]
movzx edx, word [edx]
cmp dx, 0xffff
je 0x611683
mov edx, dword [edi - 4]
test edx, edx
je 0x611656
add edx, eax
jmp 0x611658
xor edx, edx
mov dword [ebp + ecx - 0x64], edx
mov edx, dword [edi]
test edx, edx
je 0x611666
add edx, eax
jmp 0x611668
xor edx, edx
mov dword [ebp + ecx - 0x74], edx
mov edx, dword [ebp - 0x14]
movzx edx, word [edx]
movzx edx, dx
mov dword [ebp + ecx - 0x84], edx
mov dword [ebp - 0xc], 1
add dword [ebp - 0x14], 2
add ecx, 4
cmp ecx, 0x10
jb 0x61163e
add edi, 0x14
dec dword [ebp - 0x1c]
jne 0x61161a
xor ax, ax
mov ecx, ebx
call fcn.0060f208
xor esi, esi
cmp dword [ebp - 0xc], esi
je 0x61179c
push 0x4088bc
mov ecx, ebx
call fcn.0060f1b6
xor eax, eax
pop ecx
mov dword [ebp - 0xc], esi
xor edx, edx
mov ecx, dword [ebp + esi - 0x74]
test ecx, ecx
je 0x61177d
mov edi, dword [ebp + esi - 0x64]
cmp eax, edi
jne 0x6116ef
cmp edx, ecx
jne 0x6116ef
push dword [ebp + esi - 0x84]
mov ecx, ebx
push 0x4088b8
call fcn.0060f1b6
pop ecx
pop ecx
jmp 0x61176e
cmp dword [ebp - 0xc], 0
je 0x611702
push 0x4088b4
mov ecx, ebx
call fcn.0060f1b6
pop ecx
test edi, edi
je 0x611747
mov edi, dword [ebp - 0x3c]
mov eax, dword [ebp + esi - 0x64]
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x61172b
test cl, cl
je 0x611727
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x61172b
inc eax
inc eax
inc edi
inc edi
test cl, cl
jne 0x61170d
xor eax, eax
jmp 0x611730
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x611754
push dword [ebp + esi - 0x64]
mov ecx, ebx
push 0x4088ac
call fcn.0060f1b6
pop ecx
jmp 0x611753
push 0x4088a8
mov ecx, ebx
call fcn.0060f1b6
pop ecx
push dword [ebp + esi - 0x84]
mov ecx, ebx
push dword [ebp + esi - 0x74]
push 0x4088a0
call fcn.0060f1b6
add esp, 0xc
mov eax, dword [ebp + esi - 0x64]
mov edx, dword [ebp + esi - 0x74]
mov dword [ebp - 0xc], 1
add esi, 4
cmp esi, 0x10
jb 0x6116c0
cmp dword [ebp - 0xc], 0
je 0x61179c
push 0x40889c
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
push 0x462bec
mov ecx, ebx
call fcn.0060f1b6
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
pop ecx
mov ecx, dword [ebp - 8]
mov eax, dword [ecx]
movzx edx, ax
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0xffff
movzx edx, byte [ecx + 2]
mov dword [ebp - 0x1c], edx
jne 0x6108e6
push 0x462bec
mov ecx, ebx
call fcn.0060f1b6
mov eax, dword [ebp + 8]
mov esi, dword [ebp - 4]
pop ecx
mov ecx, ebx
lea edi, [esi + eax]
call fcn.0060f22a
xor ax, ax
mov ecx, ebx
call fcn.0060f208
cmp edi, 1
mov eax, 0x420dc8
je 0x61180b
mov eax, 0x457408
push eax
push edi
push 0x408870
mov ecx, ebx
call fcn.0060f1b6
add esp, 0xc
test esi, esi
je 0x611833
push dword [ebp + 8]
mov ecx, ebx
push esi
push 0x408850
call fcn.0060f1b6
add esp, 0xc
push 0x462bec
mov ecx, ebx
call fcn.0060f1b6
pop ecx
mov ecx, ebx
call fcn.0060f22a
jmp 0x611854
push ebx
mov esi, edi
call fcn.006105b6
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x30]
test eax, eax
pop edi
pop esi
je 0x611863
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
leave
ret 8