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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x128]
cmp eax, dword [ecx + 8]
jbe 0x5656e9
sub esp, 0x1a8
mov eax, dword [esp + 0x1ac]
mov ecx, dword [eax + 0xc4]
mov edx, dword [eax + 0xc8]
test ecx, ecx
jne 0x565666
nop
lea ecx, [eax + 0x10]
mov dword [esp], ecx
call fcn.00462ac0
mov eax, dword [esp + 0x1ac]
mov ecx, dword [eax + 0x18c]
mov edx, dword [eax + 0x184]
cmp ecx, edx
setae bl
mov ebp, dword [eax + 0x190]
mov esi, edx
sar edx, 0x1f
cmp ebp, edx
setg dl
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, ebx
or edx, ebp
mov ebx, dword [esp + 4]
test dl, dl
je 0x563069
xor esi, esi
jmp 0x56306b
sub esi, ecx
test esi, esi
jne 0x565529
mov dword [esp + 0x4c], ebx
lea edi, [eax + 0x180]
mov dword [esp + 0x50], edi
nop
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563095
xor eax, eax
call fcn.0045e87a
jmp 0x5630a7
lea eax, [0x61ff80]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00410dd0
mov eax, dword [esp + 0x1ac]
mov dword [eax + 0x194], 0xffffffff
mov ecx, dword [eax]
mov edx, dword [eax + 4]
lea ebx, [0x613d20]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00409090
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x1ac]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 5
call fcn.00565a30
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
test eax, eax
je 0x5632d7
mov ebp, dword [0x7ef814]
cmp dword [0x7ef810], ecx
je 0x563124
xor ecx, ecx
jmp 0x56314b
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x38], eax
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call fcn.00403610
movzx eax, byte [esp + 0xc]
mov ebx, dword [esp + 0x7c]
mov ecx, eax
mov eax, dword [esp + 0x38]
test cl, cl
je 0x563172
mov ecx, dword [esp + 0x1ac]
mov edx, dword [ecx + 0x178]
cmp dword [ecx + 0x170], edx
jne 0x563179
mov eax, dword [0x7ef7e8]
mov ebx, dword [0x7ef7ec]
jmp 0x563179
mov ecx, dword [esp + 0x1ac]
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x38], eax
lea ecx, [0x61ac80]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
jne 0x5631aa
mov eax, 1
jmp 0x5631ba
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
test al, al
jne 0x5631cb
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x38]
jmp 0x5632c2
nop
lea eax, [0x61ac80]
mov dword [esp], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x563238
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ebx, dword [0x816df0]
test ebx, ebx
jne 0x563224
mov eax, dword [esp + 0x7c]
mov dword [edx + 0xc8], eax
jmp 0x5632c2
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x7c]
call fcn.0045e5d0
jmp 0x5632c2
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563277
mov ecx, dword [esp + 0xb8]
mov dword [eax + 4], ecx
jmp 0x56328a
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xb8]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5632af
mov dword [edx + 0xc8], eax
jmp 0x5632ba
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], eax
add esp, 0x1a8
ret
mov ebx, dword [esp + 0x1ac]
mov ebp, dword [ebx + 0x16c]
mov ecx, dword [ebx + 0x170]
mov edx, dword [ebx + 0x174]
mov eax, dword [ebx + 0x178]
cmp ecx, eax
jb 0x5656e3
sub edx, eax
mov ecx, edx
neg edx
sar edx, 0x1f
and eax, edx
cmp ecx, 5
jb 0x5656d7
movzx ecx, byte [ebp + eax]
mov edx, dword [esp + 0x4c]
cmp edx, 1
je 0x563329
cmp cl, 0x80
je 0x56534b
mov esi, edx
movzx edx, byte [ebp + eax + 1]
shl edx, 8
mov edi, ecx
movzx ecx, byte [ebp + eax + 2]
or edx, ecx
movzx ecx, byte [ebp + eax + 3]
shl ecx, 8
movzx ebp, byte [ebp + eax + 4]
or ecx, ebp
movzx ebp, byte [ebx + 0x26]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x56361e
mov eax, ecx
movzx ecx, word [ebx + 0x24]
cmp cx, 0x304
je 0x563612
cmp cx, dx
jne 0x563378
xchg ebp, eax
test al, al
xchg ebp, eax
jmp 0x563616
mov word [esp + 0x2a], dx
mov dword [esp], ebx
mov byte [esp + 4], 0x46
call fcn.00565d50
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
movzx eax, word [esp + 0x2a]
mov word [esp], ax
call fcn.00408d30
mov eax, dword [esp + 4]
lea ecx, [0x60d980]
mov dword [esp + 0x120], ecx
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x1ac]
movzx edx, word [eax + 0x24]
mov word [esp], dx
call fcn.00408d30
mov eax, dword [esp + 4]
lea ecx, [0x60d980]
mov dword [esp + 0x128], ecx
mov dword [esp + 0x12c], eax
lea eax, [0x64e77e]
mov dword [esp], eax
mov dword [esp + 4], 0x39
lea eax, [esp + 0x120]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b47b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x30], ecx
lea edi, [esp + 0x130]
mov edx, eax
xor eax, eax
call fcn.0045e87a
mov dword [esp + 0x130], edx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x134], eax
mov eax, dword [esp + 0x1ac]
mov ecx, dword [eax + 0x170]
mov edx, dword [eax + 0x16c]
mov ebx, dword [eax + 0x174]
mov ebp, dword [eax + 0x178]
cmp ecx, ebp
jb 0x5656d0
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebp, ebx
add edx, ebp
cmp ecx, 5
jl 0x5634a5
mov ecx, 5
lea ebx, [esp + 0x138]
cmp ebx, edx
je 0x5634c0
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0045ef80
lea edi, [esp + 0x190]
lea esi, [esp + 0x130]
call fcn.0045ed54
lea eax, [0x69f8ac]
mov dword [esp], eax
lea eax, [esp + 0x190]
mov dword [esp + 4], eax
call fcn.00409020
mov eax, dword [esp + 0xc]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x56356f
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563558
mov eax, dword [esp + 0x84]
mov dword [edx + 0xc8], eax
jmp 0x5635f1
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x84]
call fcn.0045e5d0
jmp 0x5635f1
mov dword [esp + 0x114], edx
mov dword [esp + 0xf0], ecx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5635ae
mov ecx, dword [esp + 0xf0]
mov dword [eax + 4], ecx
jmp 0x5635c1
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xf0]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5635e6
mov dword [edx + 0xc8], eax
jmp 0x5635f1
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x563822
jmp 0x563620
mov eax, ecx
xchg edi, eax
cmp al, 0x15
xchg edi, eax
je 0x56362e
xchg edi, eax
cmp al, 0x16
xchg edi, eax
jne 0x563639
cmp dx, 0x1000
jb 0x563822
mov ecx, dword [ebx]
mov dword [esp + 0x44], ecx
mov edx, dword [ebx + 4]
lea edi, [esp + 0x148]
xor eax, eax
call fcn.0045e87a
lea ecx, [0x64c749]
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], 0x2f
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x158], ecx
mov dword [esp + 0x15c], edx
mov ecx, dword [ebx + 0x170]
mov edx, dword [ebx + 0x16c]
mov ebp, dword [ebx + 0x174]
mov eax, dword [ebx + 0x178]
cmp ecx, eax
jb 0x5656cb
sub ecx, eax
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and eax, ebp
add eax, edx
cmp ecx, 5
jl 0x5636b5
mov ecx, 5
lea edx, [esp + 0x150]
cmp edx, eax
je 0x5636d0
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0045ef80
lea edi, [esp + 0x190]
lea esi, [esp + 0x148]
call fcn.0045ed54
lea eax, [0x69f8ac]
mov dword [esp], eax
lea eax, [esp + 0x190]
mov dword [esp + 4], eax
call fcn.00409020
mov eax, dword [esp + 0xc]
mov dword [esp + 0x94], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x56377f
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563768
mov eax, dword [esp + 0x94]
mov dword [edx + 0xc8], eax
jmp 0x563801
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x94]
call fcn.0045e5d0
jmp 0x563801
mov dword [esp + 0xd4], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5637be
mov ecx, dword [esp + 0xd4]
mov dword [eax + 4], ecx
jmp 0x5637d1
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd4]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5637f6
mov dword [edx + 0xc8], eax
jmp 0x563801
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp + 0x48], eax
cmp word [ebx + 0x24], 0x304
jne 0x56383a
cmp eax, 0x4100
jg 0x563845
jmp 0x563a96
cmp eax, 0x4800
jle 0x563a96
mov dword [esp], ebx
mov byte [esp + 4], 0x16
call fcn.00565d50
mov dword [esp + 0x118], 0
mov dword [esp + 0x11c], 0
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.00408da0
mov eax, dword [esp + 4]
lea ecx, [0x60d000]
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], eax
lea eax, [0x64a8ce]
mov dword [esp], eax
mov dword [esp + 4], 0x28
lea eax, [esp + 0x118]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004b47b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x2c], ecx
lea edi, [esp + 0x178]
mov edx, eax
xor eax, eax
call fcn.0045e87a
mov dword [esp + 0x178], edx
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x17c], eax
mov eax, dword [esp + 0x1ac]
mov ecx, dword [eax + 0x170]
mov edx, dword [eax + 0x16c]
mov ebx, dword [eax + 0x174]
mov ebp, dword [eax + 0x178]
cmp ecx, ebp
jb 0x5656c4
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebp, ebx
add edx, ebp
cmp ecx, 5
jl 0x563929
mov ecx, 5
lea ebx, [esp + 0x180]
cmp ebx, edx
je 0x563944
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0045ef80
lea edi, [esp + 0x190]
lea esi, [esp + 0x178]
call fcn.0045ed54
lea eax, [0x69f8ac]
mov dword [esp], eax
lea eax, [esp + 0x190]
mov dword [esp + 4], eax
call fcn.00409020
mov eax, dword [esp + 0xc]
mov dword [esp + 0x88], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5639f3
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5639dc
mov eax, dword [esp + 0x88]
mov dword [edx + 0xc8], eax
jmp 0x563a75
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x88]
call fcn.0045e5d0
jmp 0x563a75
mov dword [esp + 0xc0], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563a32
mov ecx, dword [esp + 0xc0]
mov dword [eax + 4], ecx
jmp 0x563a45
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xc0]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563a6a
mov dword [edx + 0xc8], eax
jmp 0x563a75
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
lea edx, [0x613d20]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00409090
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x1ac]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x48]
add eax, 5
mov dword [esp + 0x48], eax
mov dword [esp + 0xc], eax
call fcn.00565a30
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
test eax, eax
jne 0x5651de
nop
mov ebx, dword [esp + 0x1ac]
mov byte [ebx + 0x17c], 0
nop
mov edx, dword [ebx + 0x174]
mov ebp, dword [ebx + 0x16c]
mov esi, dword [ebx + 0x170]
mov eax, dword [ebx + 0x178]
sub esi, eax
mov edi, dword [esp + 0x48]
cmp esi, edi
jl 0x563b27
mov esi, edi
lea ecx, [esi + eax]
cmp edx, ecx
jb 0x5656bf
cmp eax, ecx
ja 0x5656ba
mov dword [ebx + 0x178], ecx
sub edx, eax
mov ecx, edx
neg edx
sar edx, 0x1f
and eax, edx
add eax, ebp
test esi, esi
jle 0x563b58
mov byte [ebx + 0x17c], 0xff
lea edx, [ebx + 0xbc]
mov dword [esp + 0x110], edx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
call fcn.005615d0
movzx eax, byte [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
test ecx, ecx
je 0x563cdf
lea eax, [0x69f8c0]
cmp edx, eax
jne 0x56569e
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x1ac]
mov dword [esp], ecx
mov byte [esp + 4], al
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x563c3c
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563c28
mov eax, dword [esp + 0x54]
mov dword [edx + 0xc8], eax
jmp 0x563cbe
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x54]
call fcn.0045e5d0
jmp 0x563cbe
mov dword [esp + 0x114], edx
mov dword [esp + 0xcc], ecx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563c7b
mov ecx, dword [esp + 0xcc]
mov dword [eax + 4], ecx
jmp 0x563c8e
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xcc]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563cb3
mov dword [edx + 0xc8], eax
jmp 0x563cbe
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
cmp edi, 0x4000
jg 0x5650ad
mov ecx, dword [esp + 0x1ac]
mov edx, dword [ecx + 0xd0]
test edx, edx
jne 0x563d05
cmp al, 0x17
je 0x564f7a
cmp al, 0x15
je 0x563d1d
cmp al, 0x14
je 0x563d1d
test edi, edi
jle 0x563d1d
mov dword [ecx + 0x1cc], 0
movzx edx, word [ecx + 0x24]
cmp dx, 0x304
jne 0x563e77
cmp al, 0x16
je 0x564ad0
mov ebx, dword [ecx + 0x19c]
sub ebx, dword [ecx + 0x1a4]
test ebx, ebx
jg 0x563d4d
cmp al, 0x15
jmp 0x563e7a
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x563dd4
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563dc0
mov eax, dword [esp + 0x78]
mov dword [edx + 0xc8], eax
jmp 0x563e56
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x78]
call fcn.0045e5d0
jmp 0x563e56
mov dword [esp + 0xec], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563e13
mov ecx, dword [esp + 0xec]
mov dword [eax + 4], ecx
jmp 0x563e26
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xec]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563e4b
mov dword [edx + 0xc8], eax
jmp 0x563e56
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
cmp al, 0x15
ja 0x564ac7
cmp al, 0x14
jne 0x5643eb
cmp edi, 1
jne 0x563e97
cmp byte [esi], 1
je 0x563fca
mov dword [esp], ecx
mov byte [esp + 4], 0x32
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x563f27
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563f10
mov eax, dword [esp + 0x90]
mov dword [edx + 0xc8], eax
jmp 0x563fa9
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x90]
call fcn.0045e5d0
jmp 0x563fa9
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563f66
mov ecx, dword [esp + 0xa4]
mov dword [eax + 4], ecx
jmp 0x563f79
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xa4]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x563f9e
mov dword [edx + 0xc8], eax
jmp 0x563fa9
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov eax, dword [ecx + 0x19c]
sub eax, dword [ecx + 0x1a4]
test eax, eax
jg 0x5642b8
cmp dx, 0x304
je 0x564287
movzx eax, byte [esp + 0x1b0]
test al, al
je 0x56415d
mov eax, dword [esp + 0x110]
mov dword [esp], eax
call fcn.00561190
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test eax, eax
je 0x564ce0
lea eax, [0x69f8c0]
cmp ecx, eax
jne 0x565682
movzx eax, byte [edx]
mov ecx, dword [esp + 0x1ac]
mov dword [esp], ecx
mov byte [esp + 4], al
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5640ba
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5640a6
mov eax, dword [esp + 0x60]
mov dword [edx + 0xc8], eax
jmp 0x56413c
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x60]
call fcn.0045e5d0
jmp 0x56413c
mov dword [esp + 0xf8], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5640f9
mov ecx, dword [esp + 0xf8]
mov dword [eax + 4], ecx
jmp 0x56410c
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xf8]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564131
mov dword [edx + 0xc8], eax
jmp 0x56413c
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5641e4
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5641d0
mov eax, dword [esp + 0x68]
mov dword [edx + 0xc8], eax
jmp 0x564266
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x68]
call fcn.0045e5d0
jmp 0x564266
mov dword [esp + 0xe8], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564223
mov ecx, dword [esp + 0xe8]
mov dword [eax + 4], ecx
jmp 0x564236
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe8]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56425b
mov dword [edx + 0xc8], eax
jmp 0x564266
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
movzx eax, byte [esp + 0x1b0]
mov byte [esp + 4], al
call fcn.00565700
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x564348
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564331
mov eax, dword [esp + 0x80]
mov dword [edx + 0xc8], eax
jmp 0x5643ca
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x80]
call fcn.0045e5d0
jmp 0x5643ca
mov dword [esp + 0xe0], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564387
mov ecx, dword [esp + 0xe0]
mov dword [eax + 4], ecx
jmp 0x56439a
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe0]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5643bf
mov dword [edx + 0xc8], eax
jmp 0x5643ca
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
cmp al, 0x15
jne 0x564e50
cmp edi, 2
jne 0x56499d
movzx eax, byte [esi + 1]
test al, al
je 0x564879
mov byte [esp + 0x29], al
cmp dx, 0x304
je 0x564705
movzx edx, byte [esi]
cmp dl, 1
je 0x5646d4
cmp dl, 2
jne 0x5645a1
lea eax, [0x626fa0]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xc
lea ecx, [0x63e8ed]
mov dword [eax], ecx
lea ecx, [0x69f8c0]
mov dword [eax + 0x20], ecx
mov ecx, dword [0x816df0]
movzx edx, byte [esp + 0x29]
movzx edx, dl
lea ebx, [0x7cace0]
lea edx, [ebx + edx*8]
test ecx, ecx
jne 0x564477
mov dword [eax + 0x24], edx
jmp 0x564485
lea edi, [eax + 0x24]
mov ecx, eax
mov eax, edx
call fcn.0045e5d0
mov eax, ecx
mov dword [esp + 0x10c], eax
lea ecx, [0x61ac80]
mov dword [esp], ecx
lea ecx, [0x69f578]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5644fe
lea ecx, [0x69f578]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5644e7
mov eax, dword [esp + 0x10c]
mov dword [edx + 0xc8], eax
jmp 0x564580
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x10c]
call fcn.0045e5d0
jmp 0x564580
mov dword [esp + 0xac], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56453d
mov ecx, dword [esp + 0xac]
mov dword [eax + 4], ecx
jmp 0x564550
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xac]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564575
mov dword [edx + 0xc8], eax
jmp 0x564580
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x564631
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56461a
mov eax, dword [esp + 0x9c]
mov dword [edx + 0xc8], eax
jmp 0x5646b3
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x9c]
call fcn.0045e5d0
jmp 0x5646b3
mov dword [esp + 0x114], edx
mov dword [esp + 0xb0], ecx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564670
mov ecx, dword [esp + 0xb0]
mov dword [eax + 4], ecx
jmp 0x564683
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xb0]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5646a8
mov dword [edx + 0xc8], eax
jmp 0x5646b3
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
movzx eax, byte [esp + 0x1b0]
mov byte [esp + 4], al
call fcn.00565700
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
lea eax, [0x626fa0]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0xc
lea ecx, [0x63e8ed]
mov dword [eax], ecx
lea ecx, [0x69f8c0]
mov dword [eax + 0x20], ecx
mov ecx, dword [0x816df0]
movzx edx, byte [esp + 0x29]
movzx edx, dl
lea ebx, [0x7cace0]
lea edx, [ebx + edx*8]
test ecx, ecx
jne 0x56474f
mov dword [eax + 0x24], edx
jmp 0x56475d
lea edi, [eax + 0x24]
mov ecx, eax
mov eax, edx
call fcn.0045e5d0
mov eax, ecx
mov dword [esp + 0x10c], eax
lea ecx, [0x61ac80]
mov dword [esp], ecx
lea ecx, [0x69f578]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5647d6
lea ecx, [0x69f578]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5647bf
mov eax, dword [esp + 0x10c]
mov dword [edx + 0xc8], eax
jmp 0x564858
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x10c]
call fcn.0045e5d0
jmp 0x564858
mov dword [esp + 0xb4], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564815
mov ecx, dword [esp + 0xb4]
mov dword [eax + 4], ecx
jmp 0x564828
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xb4]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56484d
mov dword [edx + 0xc8], eax
jmp 0x564858
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov eax, dword [0x7ef7ec]
mov dword [esp + 0x8c], eax
mov ecx, dword [0x7ef7e8]
mov dword [esp + 0x34], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5648fa
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5648e3
mov eax, dword [esp + 0x8c]
mov dword [edx + 0xc8], eax
jmp 0x56497c
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x8c]
call fcn.0045e5d0
jmp 0x56497c
mov dword [esp + 0xbc], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564939
mov ecx, dword [esp + 0xbc]
mov dword [eax + 4], ecx
jmp 0x56494c
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xbc]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564971
mov dword [edx + 0xc8], eax
jmp 0x56497c
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x564a24
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564a10
mov eax, dword [esp + 0x74]
mov dword [edx + 0xc8], eax
jmp 0x564aa6
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x74]
call fcn.0045e5d0
jmp 0x564aa6
mov dword [esp + 0xc4], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564a63
mov ecx, dword [esp + 0xc4]
mov dword [eax + 4], ecx
jmp 0x564a76
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xc4]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564a9b
mov dword [edx + 0xc8], eax
jmp 0x564aa6
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
cmp al, 0x16
jne 0x564c2d
test edi, edi
je 0x564ae4
movzx eax, byte [esp + 0x1b0]
test al, al
je 0x564c0e
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x564b6b
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564b57
mov eax, dword [esp + 0x70]
mov dword [edx + 0xc8], eax
jmp 0x564bed
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x70]
call fcn.0045e5d0
jmp 0x564bed
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564baa
mov ecx, dword [esp + 0xfc]
mov dword [eax + 4], ecx
jmp 0x564bbd
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xfc]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564be2
mov dword [edx + 0xc8], eax
jmp 0x564bed
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
lea eax, [ecx + 0x198]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edi
mov dword [esp + 0xc], ebp
call fcn.004c2db0
jmp 0x564ce0
cmp al, 0x17
jne 0x564e50
mov edx, dword [esp + 0x4c]
cmp edx, 1
jne 0x564d26
movzx edx, byte [esp + 0x1b0]
test dl, dl
jne 0x564d26
test edi, edi
je 0x564cfd
nop
mov edx, dword [0x816df0]
test edx, edx
jne 0x564c82
xor eax, eax
mov edx, edi
mov edi, dword [esp + 0x50]
call fcn.0045e87a
mov ecx, dword [esp + 0x1ac]
mov dword [ecx + 0x180], esi
jmp 0x564cca
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], edi
mov dword [esp + 0x100], esi
lea eax, [0x61ff80]
mov dword [esp], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
call fcn.00410dd0
mov eax, dword [esp + 0x1ac]
lea edi, [eax + 0x180]
mov ecx, eax
mov eax, dword [esp + 0x100]
call fcn.0045e5d0
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x40]
mov dword [ecx + 0x184], edx
mov dword [ecx + 0x188], ebp
mov dword [ecx + 0x194], 0xffffffff
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x1b8], 0
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], dl
call fcn.00565700
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x564dad
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564d99
mov eax, dword [esp + 0x6c]
mov dword [edx + 0xc8], eax
jmp 0x564e2f
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x6c]
call fcn.0045e5d0
jmp 0x564e2f
mov dword [esp + 0xd0], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564dec
mov ecx, dword [esp + 0xd0]
mov dword [eax + 4], ecx
jmp 0x564dff
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd0]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564e24
mov dword [edx + 0xc8], eax
jmp 0x564e2f
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x564ed7
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564ec3
mov eax, dword [esp + 0x58]
mov dword [edx + 0xc8], eax
jmp 0x564f59
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x58]
call fcn.0045e5d0
jmp 0x564f59
mov dword [esp + 0xc8], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564f16
mov ecx, dword [esp + 0xc8]
mov dword [eax + 4], ecx
jmp 0x564f29
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xc8]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564f4e
mov dword [edx + 0xc8], eax
jmp 0x564f59
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp], ecx
mov byte [esp + 4], 0xa
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x56500a
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x564ff3
mov eax, dword [esp + 0xa0]
mov dword [edx + 0xc8], eax
jmp 0x56508c
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0xa0]
call fcn.0045e5d0
jmp 0x56508c
mov dword [esp + 0xf4], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x565049
mov ecx, dword [esp + 0xf4]
mov dword [eax + 4], ecx
jmp 0x56505c
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xf4]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x565081
mov dword [edx + 0xc8], eax
jmp 0x56508c
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov eax, dword [esp + 0x1ac]
mov dword [esp], eax
mov byte [esp + 4], 0x16
call fcn.00565d50
mov eax, dword [esp + 0xc]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x56513b
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x565127
mov eax, dword [esp + 0x64]
mov dword [edx + 0xc8], eax
jmp 0x5651bd
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x64]
call fcn.0045e5d0
jmp 0x5651bd
mov dword [esp + 0x114], edx
mov dword [esp + 0xd8], ecx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56517a
mov ecx, dword [esp + 0xd8]
mov dword [eax + 4], ecx
jmp 0x56518d
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xd8]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5651b2
mov dword [edx + 0xc8], eax
jmp 0x5651bd
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x114], edx
lea eax, [0x61ac80]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
test eax, eax
jne 0x565212
mov eax, 1
jmp 0x565222
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
call eax
movzx eax, byte [esp + 4]
xor eax, 1
test al, al
jne 0x565236
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x114]
jmp 0x565336
nop
lea eax, [0x61ac80]
mov dword [esp], eax
mov eax, dword [esp + 0x114]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x5c]
mov dword [esp + 8], ecx
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5652a9
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ebx, dword [0x816df0]
test ebx, ebx
jne 0x565295
mov eax, dword [esp + 0x5c]
mov dword [edx + 0xc8], eax
jmp 0x565336
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x5c]
call fcn.0045e5d0
jmp 0x565336
mov dword [esp + 0xa8], ecx
mov dword [esp + 0x108], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x108]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5652e8
mov ecx, dword [esp + 0xa8]
mov dword [eax + 4], ecx
jmp 0x5652fb
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xa8]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x565320
mov dword [edx + 0xc8], eax
jmp 0x56532b
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x114]
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], eax
add esp, 0x1a8
ret
mov dword [esp], ebx
mov byte [esp + 4], 0x46
call fcn.00565d50
lea edi, [esp + 0x160]
xor eax, eax
call fcn.0045e87a
lea eax, [0x649436]
mov dword [esp + 0x160], eax
mov dword [esp + 0x164], 0x24
mov eax, dword [esp + 0x1ac]
mov ecx, dword [eax + 0x170]
mov edx, dword [eax + 0x16c]
mov ebx, dword [eax + 0x174]
mov ebp, dword [eax + 0x178]
cmp ecx, ebp
jb 0x56567b
sub ecx, ebp
sub ebx, ebp
neg ebx
sar ebx, 0x1f
and ebp, ebx
add edx, ebp
cmp ecx, 5
jl 0x5653bc
mov ecx, 5
lea ebx, [esp + 0x168]
cmp ebx, edx
je 0x5653d7
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0045ef80
lea edi, [esp + 0x190]
lea esi, [esp + 0x160]
call fcn.0045ed54
lea eax, [0x69f8ac]
mov dword [esp], eax
lea eax, [esp + 0x190]
mov dword [esp + 4], eax
call fcn.00409020
mov eax, dword [esp + 0xc]
mov dword [esp + 0x98], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x114], ecx
lea edx, [0x61ac80]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x565486
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56546f
mov eax, dword [esp + 0x98]
mov dword [edx + 0xc8], eax
jmp 0x565508
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x98]
call fcn.0045e5d0
jmp 0x565508
mov dword [esp + 0xe4], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5654c5
mov ecx, dword [esp + 0xe4]
mov dword [eax + 4], ecx
jmp 0x5654d8
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xe4]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5654fd
mov dword [edx + 0xc8], eax
jmp 0x565508
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
lea eax, [0x615300]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov dword [esp + 0x104], eax
mov dword [eax + 4], 0x4b
lea ecx, [0x64fbc7]
mov dword [eax], ecx
lea ecx, [0x61ac80]
mov dword [esp], ecx
lea ecx, [0x69f4b0]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004091c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x5655c3
lea ecx, [0x69f4b0]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x5655ac
mov eax, dword [esp + 0x104]
mov dword [edx + 0xc8], eax
jmp 0x565645
lea edi, [edx + 0xc8]
mov eax, dword [esp + 0x104]
call fcn.0045e5d0
jmp 0x565645
mov dword [esp + 0xdc], ecx
mov dword [esp + 0x114], edx
lea eax, [0x615240]
mov dword [esp], eax
call fcn.0040b5f0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x565602
mov ecx, dword [esp + 0xdc]
mov dword [eax + 4], ecx
jmp 0x565615
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0xdc]
call fcn.0045e5d0
mov eax, ecx
lea ecx, [0x69f488]
mov edx, dword [esp + 0x1ac]
mov dword [edx + 0xc4], ecx
mov ecx, dword [0x816df0]
test ecx, ecx
jne 0x56563a
mov dword [edx + 0xc8], eax
jmp 0x565645
lea edi, [edx + 0xc8]
call fcn.0045e5d0
mov eax, dword [edx + 0xc4]
mov ecx, dword [edx + 0xc8]
mov dword [esp + 0x1b4], eax
mov dword [esp + 0x1b8], ecx
add esp, 0x1a8
ret
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], edx
add esp, 0x1a8
ret
mov eax, ebp
call fcn.0045e6b0
mov dword [esp], ecx
lea eax, [0x615f00]
mov dword [esp + 4], eax
lea eax, [0x613ae0]
mov dword [esp + 8], eax
call fcn.00408c00
mov dword [esp], edx
lea eax, [0x615f00]
mov dword [esp + 4], eax
lea eax, [0x613ae0]
mov dword [esp + 8], eax
call fcn.00408c00
call fcn.0045e6b0
call fcn.0045e690
mov eax, ebp
call fcn.0045e6b0
call fcn.0045e6b0
mov eax, ebp
call fcn.0045e6b0
mov edx, ecx
mov ecx, 5
call fcn.0045e690
call fcn.0045e6b0
nop
call fcn.0045d190
jmp fcn.00562fe0