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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x9c
mov ebx, ecx
mov ebp, dword [ebx]
cmp dword [ebx + 0x6c], 0
mov dword [esp + 0x18], ebp
mov dword [esp + 4], ebx
je 0x5f377f
mov eax, dword [ebx + 0x14]
mov ecx, edx
sub ecx, dword [ebx + 4]
sar ecx, 1
cmp byte [eax + ecx], 0
je 0x5f377f
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x64], eax
cmp dword [ebp], 0
je 0x5f37df
mov dword [esp + 0x20], 1
cmp edx, dword [esp + 0xb0]
jb 0x5f379c
jmp 0x5f897c
mov dword [esp + 0x20], 0
mov dword [esp + 0x64], 0
cmp edx, dword [esp + 0xb0]
jae 0x5f897c
mov eax, dword [esp + 0xb4]
lea ecx, [eax + 8]
mov dword [esp + 0x10], ecx
lea eax, [eax + 0xc]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 4]
lea eax, [ecx + 0x20]
mov dword [esp + 0x38], eax
lea eax, [ecx + 0xc0]
mov dword [esp + 0x28], eax
lea eax, [ecx + 0xc8]
mov dword [esp + 0x98], eax
lea eax, [ecx + 0x3c]
mov dword [esp + 0x58], eax
jmp 0x5f8460
mov dword [esp], edx
mov eax, dword [ebp + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x24]
cmp edx, 0x7f8
ja 0x5f3949
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
mov edx, dword [esp]
mov dword [edi + 0x20], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0xc], 0
mov dword [edi + 8], 0
mov dword [edi + 4], 0
mov eax, dword [esp + 0xb4]
mov ecx, eax
mov eax, dword [ecx + 8]
mov dword [edi], eax
mov dword [ecx + 8], edi
mov dword [ebx + 0x18], edi
mov dword [edi + 0x10], 0x6f5c4c
mov eax, edx
sub eax, dword [ebx + 4]
sar eax, 1
mov dword [edi + 0x18], eax
sub esp, 4
lea eax, [esp + 0x80]
mov ecx, ebx
push eax
push 0
push dword [esp + 0xbc]
call fcn.0061a5d0
add esp, 0x10
mov dword [edi + 0x20], eax
mov dword [esp + 0x20], 0
test eax, eax
mov ecx, 0
mov dword [esp + 0x2c], eax
cmovns ecx, eax
mov dword [esp + 0x10], ecx
mov edx, 0x20
mov ecx, ebp
push dword [ebx + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov esi, dword [ebx]
cmp dword [esi], 0
jne 0x5f8b1e
mov eax, dword [esp + 0x10]
lea eax, [eax*4 + 0xc]
mov edx, 0x11
mov ecx, esi
push 0
push 2
push eax
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f38e8
or byte [eax + 1], 0x28
mov dword [esp + 0x20], 0
cmp dword [esi], 0
jne 0x5f8b1e
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f3917
mov byte [eax], 0x3b
mov dword [esp + 0x20], 0
cmp dword [esi], 0
jne 0x5f8b1e
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x10]
cmp edx, 0x7f8
ja 0x5f8a6d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f8a98
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5f8a55
mov eax, dword [ebp + 0x30]
mov dword [edi], eax
mov dword [ebp + 0x30], edi
mov dword [edi + 4], 0x24
cmp dword [ebp], 0
mov edx, dword [esp]
jne 0x5f3769
add edi, 8
jmp 0x5f3801
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5f8ad7
mov eax, dword [edi + 0x30]
mov dword [ebp], eax
mov dword [edi + 0x30], ebp
mov dword [ebp + 4], 0x14
cmp dword [edi], 0
mov edx, dword [esp]
jne case.0x5f8474.97
add ebp, 8
lea eax, [edi + 0x30]
mov dword [esp + 8], eax
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 0
mov dword [ebp + 4], 0
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [ebp], eax
mov dword [ebp + 0x10], edx
mov dword [ecx], ebp
movzx eax, word [edx]
cmp eax, 0x9f
mov ebx, dword [esp + 4]
je 0x5f3da2
movzx eax, ax
cmp eax, 0x9d
jne 0x5f3d95
cmp dword [edi], 0
jne 0x5f7df8
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f488d
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f48bc
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne case.0x5f8474.97
mov dword [esp], edx
mov ebp, dword [esp + 0x18]
mov ecx, dword [ebp + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x14]
cmp edx, 0x7f8
ja 0x5f4041
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f407a
movzx eax, word [edx + 2]
movzx eax, word [edx + eax*2]
add eax, 0xffffff9e
movzx eax, ax
cmp eax, 0xb
ja 0x5f3fe3
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.0060d520
jmp 0x5f8960
mov eax, dword [esp + 4]
mov ebp, dword [eax]
xor edi, edi
cmp dword [ebp], 0
jne 0x5f8965
mov eax, dword [esp + 4]
mov esi, dword [eax + 0xc8]
mov dword [esp], edx
movzx ebx, word [edx + 2]
mov eax, dword [ebp + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x18]
cmp edx, 0x7f8
mov edi, ebp
ja 0x5f4798
mov dword [esp + 8], edi
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
mov edx, dword [esp]
mov dword [ebp + 0x14], 0
mov dword [ebp + 0x10], 0
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 0
mov dword [ebp + 4], 0
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [ebp], eax
mov dword [ebp + 0x10], edx
mov dword [ecx], ebp
mov edi, dword [esp + 4]
mov eax, dword [edi + 4]
lea edx, [eax + ebx*2]
sub esp, 4
mov ecx, edi
lea eax, [esp + 0x80]
push eax
push 1
push 0
call fcn.0061a5d0
add esp, 0x10
cmp eax, 0xfffffffe
jne 0x5f4b07
mov eax, dword [edi + 4]
lea esi, [eax + ebx*2]
mov ecx, edi
mov edx, esi
call fcn.005fd420
mov ecx, edi
movzx edi, word [esi + 2]
movzx edx, word [esi + edi*2]
lea esi, [esi + edi*2]
cmp edx, 0x77
je 0x5f3b53
sub esp, 8
mov edx, eax
push ebp
push esi
call fcn.005f3730
add esp, 0x10
mov dword [ebp + 0x14], 1
jmp 0x5f7ad9
mov eax, dword [esp + 4]
mov edi, dword [eax]
cmp dword [edi], 0
jne case.0x5f8474.97
mov dword [esp], edx
mov esi, dword [edi + 0x30]
mov ecx, dword [esi + 4]
lea edx, [ecx + 0x14]
cmp edx, 0x7f8
ja 0x5f413f
lea eax, [esi + ecx + 8]
mov dword [esi + 4], edx
mov edx, dword [esp]
jmp 0x5f4176
movzx eax, word [edx + 2]
cmp eax, 0x81
jb 0x5f400d
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.00616e20
jmp 0x5f8960
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne case.0x5f8474.97
mov esi, edx
mov eax, dword [esp + 0x18]
mov eax, dword [eax + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x18]
cmp edx, 0x7f8
ja 0x5f4221
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f425c
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne case.0x5f8474.97
mov dword [esp], edx
mov ebp, dword [esp + 0x18]
mov ecx, dword [ebp + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x14]
cmp edx, 0x7f8
ja 0x5f4340
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4379
mov ebx, dword [esp + 4]
cmp dword [ebx + 0xcc], 0
jne 0x5f3cf4
mov esi, dword [ebx]
mov eax, dword [ebx + 0x10]
mov ebp, edx
movzx edi, word [edx + 2]
mov bl, byte [eax + edi]
test bl, bl
jne 0x5f3c8a
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x1c]
lea eax, [eax + edi*4]
mov edx, 0x20
mov ecx, esi
push eax
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
lea eax, [eax + edi*8 + 4]
mov edx, 0x20
mov ecx, esi
push 0
push 0xc
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
test bl, bl
mov edx, ebp
jne 0x5f3cf4
shl edi, 3
mov eax, dword [esp + 0x38]
add edi, dword [eax]
mov edx, 0x20
mov ecx, esi
push 0
push 1
push edi
push 0x8d
call fcn.005f2690
mov edx, ebp
add esp, 0x10
jmp 0x5f3cf4
add edx, 2
nop dword [eax]
mov eax, edx
movzx ecx, word [eax + 2]
movzx edx, word [eax + ecx*2]
lea eax, [eax + ecx*2]
cmp edx, 0x77
mov edx, eax
je 0x5f3ce0
add edx, 4
jmp 0x5f7dfb
add edx, 2
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea eax, [eax + 4]
cmove eax, dword [esp + 0x2c]
sub esp, 4
mov edi, edx
movzx edx, si
mov ecx, dword [esp + 8]
push 1
push eax
push edi
jmp 0x5f84b6
lea edi, [edx + 4]
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea eax, [eax + 4]
cmove eax, dword [esp + 0x2c]
sub esp, 4
mov ecx, dword [esp + 8]
push 0
push 1
push eax
jmp 0x5f3d88
lea edi, [edx + 6]
mov esi, dword [esp + 0x10]
mov eax, dword [esi]
test eax, eax
lea eax, [eax + 4]
mov ebp, dword [esp + 0x2c]
cmove eax, ebp
sub esp, 0xc
mov ebx, dword [esp + 0x10]
mov ecx, ebx
mov dword [esp + 0xc], edx
push eax
call fcn.00614a30
add esp, 0x10
mov eax, dword [esi]
test eax, eax
lea eax, [eax + 4]
cmove eax, ebp
sub esp, 4
mov ecx, ebx
mov edx, dword [esp + 4]
push 0
push 1
push eax
call fcn.006133a0
add esp, 0x10
jmp 0x5f896d
cmp dword [ebx + 0xcc], 0
je 0x5f460d
cmp dword [ebx + 0xb8], 0
mov eax, dword [edi]
je 0x5f3e49
test eax, eax
jne 0x5f7df8
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f4727
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f4756
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f4684
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x30]
mov dword [eax], ecx
mov dword [edx + 0x30], eax
mov ebx, eax
mov dword [eax + 4], 0x20
xor edi, edi
cmp dword [edx], 0
jne 0x5f8965
add ebx, 8
jmp 0x5f858b
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea ebp, [eax + 4]
cmove ebp, dword [esp + 0x2c]
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
mov dword [esp + 0x7c], 0
xor edi, edi
mov ebx, edx
mov dword [esp + 0x1c], ebp
mov dword [esp], edx
jmp 0x5f3e80
test eax, eax
jne 0x5f7df8
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f4a87
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f4ab6
xor ecx, ecx
jmp 0x5f3fc0
cmp ebx, dword [esp + 0xb0]
jae 0x5f47e3
movzx eax, word [ebx]
cmp eax, 0x1e
je 0x5f3ec5
xor ecx, ecx
movzx eax, ax
cmp eax, 0x1d
jne 0x5f3fc0
mov eax, dword [esp + 4]
cmp dword [eax + 0x110], 0
je 0x5f3f08
movzx eax, word [ebx + 2]
and eax, 0xfc00
xor ecx, ecx
cmp eax, 0xd800
jmp 0x5f3fbc
lea edx, [ebx + 2]
mov eax, dword [esp + 4]
cmp dword [eax + 0x110], 0
movzx eax, word [ebx + 2]
je 0x5f3f12
mov ecx, eax
and ecx, 0xfc00
mov dword [esp + 8], ecx
cmp ecx, 0xd800
jne 0x5f3f50
shl eax, 0xa
and eax, 0xffc00
movzx ecx, word [ebx + 4]
and ecx, 0x3ff
lea eax, [eax + ecx + 0x10000]
jmp 0x5f3f57
mov ecx, 1
jmp 0x5f3fc0
mov ecx, 1
cmp eax, 0x100
jae 0x5f3fc0
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x54]
movzx ebp, byte [ecx + eax]
mov ecx, 1
cmp ebp, eax
mov ebp, dword [esp + 0x1c]
je 0x5f3fc0
mov ecx, dword [esp + 4]
call fcn.006206c0
xor ecx, ecx
test eax, eax
setne cl
jmp 0x5f3fc0
cmp eax, 0x80
jb 0x5f3f92
mov ecx, eax
sar ecx, 0x1f
shr ecx, 0x19
add ecx, eax
mov ebp, ecx
and ebp, 0x7fffff80
sar ecx, 7
movzx ecx, byte [ecx + 0x6f7fe0]
shl ecx, 7
sub eax, ebp
add eax, ecx
movzx eax, word [eax + eax + 0x6fa1e0]
cmp dword [eax*8 + 0x6f6964], 0
mov ebp, dword [esp + 0x1c]
jne 0x5f3fa1
jmp 0x5f3fb2
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x54]
movzx ecx, byte [ecx + eax]
cmp eax, ecx
je 0x5f3fb2
mov ecx, dword [esp + 4]
call fcn.006206c0
test eax, eax
je 0x5f3e75
xor ecx, ecx
cmp dword [esp + 8], 0xd800
sete cl
inc ecx
lea edi, [edi + ecx*2]
test ecx, ecx
je 0x5f47e0
lea ebx, [ebx + ecx*2 + 2]
cmp edi, 0x81
mov edx, dword [esp]
jl 0x5f3e80
jmp 0x5f47e3
add edx, 2
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea eax, [eax + 4]
cmove eax, dword [esp + 0x2c]
sub esp, 4
mov esi, edx
mov edx, 0x70
mov ecx, dword [esp + 8]
push 1
push eax
push esi
jmp 0x5f84b6
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne case.0x5f8474.97
mov edi, edx
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x24]
cmp edx, 0x7f8
ja 0x5f469d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f46d1
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8a64
mov ecx, dword [ebp + 0x30]
mov dword [eax], ecx
mov dword [ebp + 0x30], eax
mov dword [eax + 4], 0x14
cmp dword [ebp], 0
jne case.0x5f8474.97
add eax, 8
mov ebp, dword [esp + 0x18]
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
mov dword [eax], ecx
mov ecx, dword [esp]
mov dword [eax + 0x10], ecx
mov dword [edx], eax
mov edx, 0x20
mov ecx, ebp
mov ebx, dword [esp + 4]
push dword [ebx + 0x20]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov esi, dword [ebx]
xor edi, edi
cmp dword [esi], 0
jne 0x5f51e5
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 4
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f40ea
or byte [eax + 1], 0x28
xor edi, edi
cmp dword [esi], 0
jne 0x5f51e5
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4113
mov byte [eax], 0x3b
xor edi, edi
cmp dword [esi], 0
jne 0x5f51e5
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f4ec4
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f4ef1
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8ad7
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 0x14
cmp dword [edi], 0
mov edx, dword [esp]
jne case.0x5f8474.97
add eax, 8
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx]
mov dword [eax], esi
mov dword [eax + 0x10], edx
mov dword [esp + 8], eax
mov dword [ecx], eax
mov eax, dword [esp + 4]
mov esi, dword [eax]
xor ebx, ebx
cmp dword [esi], 0
jne 0x5f529f
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 0x38
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f41cc
or byte [eax + 1], 0x28
xor ebx, ebx
cmp dword [esi], 0
jne 0x5f529f
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f41f5
mov byte [eax], 0x3b
xor ebx, ebx
cmp dword [esi], 0
jne 0x5f529f
mov ebx, dword [esi + 0x30]
mov ecx, dword [ebx + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f4f33
lea eax, [ebx + ecx + 8]
mov dword [ebx + 4], edx
jmp 0x5f4f5e
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5f8ce9
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x30]
mov dword [ebp], eax
mov dword [ecx + 0x30], ebp
mov dword [ebp + 4], 0x18
cmp dword [ecx], 0
jne case.0x5f8474.97
add ebp, 8
mov dword [ebp + 0x14], 0
mov dword [ebp + 0x10], 0
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 0
mov dword [ebp + 4], 0
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [ebp], eax
mov dword [ebp + 0x10], esi
mov dword [ecx], ebp
add esi, 2
mov edi, esi
mov edx, dword [esp + 4]
nop word cs:[eax + eax]
movzx ecx, word [edi + 2]
movzx eax, word [edi + ecx*2]
lea edi, [edi + ecx*2]
cmp eax, 0x77
je 0x5f42a0
movzx eax, ax
cmp eax, 0x7a
mov ebx, edx
mov ebx, dword [ebx]
mov eax, dword [ebx]
jne 0x5f444e
xor esi, esi
test eax, eax
jne 0x5f6090
mov edx, 0x11
mov ecx, ebx
push 0
push 2
push 8
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f42eb
or byte [eax + 1], 0x28
xor esi, esi
cmp dword [ebx], 0
jne 0x5f6090
mov edx, 1
mov ecx, ebx
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4314
mov byte [eax], 0x3b
xor esi, esi
cmp dword [ebx], 0
jne 0x5f6090
mov eax, dword [ebx + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5d4a
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f5d77
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8a64
mov ecx, dword [ebp + 0x30]
mov dword [eax], ecx
mov dword [ebp + 0x30], eax
mov dword [eax + 4], 0x14
cmp dword [ebp], 0
jne case.0x5f8474.97
add eax, 8
mov ebp, dword [esp + 0x18]
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
mov dword [eax], ecx
mov ecx, dword [esp]
mov dword [eax + 0x10], ecx
mov dword [edx], eax
mov edx, 0x20
mov ecx, ebp
mov ebx, dword [esp + 4]
push dword [ebx + 0x3c]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edi, dword [ebx]
xor esi, esi
cmp dword [edi], 0
jne 0x5f5752
cmp dword [ebx + 0x68], 0
mov eax, 0x14
mov ecx, 4
cmove eax, ecx
mov edx, 0x11
mov ecx, edi
push 0
push 2
push eax
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f43f9
or byte [eax + 1], 0x28
xor esi, esi
cmp dword [edi], 0
jne 0x5f5752
mov edx, 1
mov ecx, edi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4422
mov byte [eax], 0x3b
xor esi, esi
cmp dword [edi], 0
jne 0x5f5752
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f4fa4
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f4fd1
xor esi, esi
test eax, eax
jne 0x5f6140
mov edx, 0x11
mov ecx, ebx
push 0
push 2
push 4
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4477
or byte [eax + 1], 0x28
xor esi, esi
cmp dword [ebx], 0
jne 0x5f6140
mov edx, 1
mov ecx, ebx
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f44a0
mov byte [eax], 0x3b
xor esi, esi
cmp dword [ebx], 0
jne 0x5f6140
mov eax, dword [ebx + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5db9
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f5de6
movzx ecx, word [edx + 4]
lea eax, [ecx*4]
add eax, dword [ebx + 0x1c]
mov dword [esp + 0x44], eax
add ecx, ecx
lea eax, [edx + 6]
mov dword [esp + 0x24], eax
mov dword [esp + 8], ecx
sub esp, 4
mov ecx, ebx
push esi
push 0
push 0
call fcn.0061a5d0
add esp, 0x10
mov ecx, eax
mov esi, dword [esp + 0x1c]
mov dword [esi + 0x18], ecx
test ecx, ecx
mov dword [esp + 0x48], ecx
js 0x5f45ee
movzx eax, word [esp + 0x50]
mov dword [esp + 0xc], 0
mov dword [esp + 0x30], eax
cmp eax, 0x94
mov edx, 0
mov eax, 0xffffffff
cmove edx, eax
add edx, ecx
cmp dword [esp + 8], 1
adc edx, 0
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x34], eax
cmp eax, 1
sbb edx, 0xffffffff
add edx, 2
mov dword [esp + 0x3c], edx
mov dword [esi + 0x1c], edx
mov esi, dword [ebx]
cmp dword [esi], 0
mov ebp, edi
jne 0x5f5b35
mov eax, dword [esp + 0x3c]
lea eax, [eax*4]
mov edx, 0x11
mov ecx, esi
push 0
push 2
push eax
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f458d
or byte [eax + 1], 0x28
mov dword [esp + 0xc], 0
cmp dword [esi], 0
jne 0x5f5b35
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f45bc
mov byte [eax], 0x3b
mov dword [esp + 0xc], 0
cmp dword [esi], 0
jne 0x5f5b35
mov edi, dword [esi + 0x30]
mov ecx, dword [edi + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f516c
lea eax, [edi + ecx + 8]
mov dword [edi + 4], edx
jmp 0x5f5197
mov ecx, dword [esp + 8]
test ecx, ecx
mov ebp, edi
je 0x5f48fe
cmp dword [ebx + 0x44], 1
mov eax, 3
sbb eax, 0
jmp 0x5f4903
cmp dword [ebx + 0x60], 0
je 0x5f3da2
cmp dword [ebx + 0xb8], 0
mov eax, dword [edi]
je 0x5f4b8d
test eax, eax
jne 0x5f7359
mov eax, dword [edi + 0x58]
mov ecx, dword [esp + 0x38]
add eax, dword [ecx]
mov edx, 1
mov ecx, edi
push eax
push 0x8d
push 0
push 0xc
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4657
mov byte [eax], 0x3b
cmp dword [edi], 0
jne 0x5f7359
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5fdc
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f600b
mov eax, dword [esp + 0x14]
mov dword [eax], 2
xor edi, edi
test edi, edi
jne 0x5f896d
jmp case.0x5f8474.97
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8a44
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x24
cmp dword [esi], 0
jne case.0x5f8474.97
add eax, 8
mov dword [eax + 0x20], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov esi, dword [esp + 0x10]
mov ecx, dword [esi]
mov dword [eax], ecx
mov edx, edi
mov dword [eax + 0x10], edx
mov dword [esi], eax
sub esp, 8
mov ecx, dword [esp + 0xc]
push 0
push eax
jmp 0x5f8955
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7def
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x30000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 5
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f49d2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f49fd
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5b12
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov ecx, eax
mov dword [eax + 4], 0x18
mov eax, edi
xor edi, edi
cmp dword [eax], 0
mov edx, dword [esp]
jne 0x5f8965
mov dword [esp + 8], eax
mov ebp, ecx
add ebp, 8
jmp 0x5f3ae5
mov edx, dword [esp]
mov dword [esp + 0x7c], edi
test edi, edi
jle 0x5f4869
mov esi, dword [esp + 0x14]
cmp dword [esi], 0
mov ebx, dword [esp + 4]
jne 0x5f79d8
mov ebp, edx
mov edx, 0x11
mov ecx, esi
push 0
push 0xc
push edi
push 0x40
call fcn.005fdd80
mov edx, ebp
add esp, 0x10
cmp dword [esi], 0
jne 0x5f79d8
mov edx, 1
mov ecx, esi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f483d
mov byte [eax], 0x3b
cmp dword [esi], 0
mov edx, ebp
jne 0x5f79d8
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5e28
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f5e59
add edx, 2
sub esp, 4
mov eax, edx
movzx edx, si
mov ebx, dword [esp + 8]
mov ecx, ebx
push 1
push ebp
push eax
call fcn.00609bb0
add esp, 0x10
mov edx, eax
jmp 0x5f7a29
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7def
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x30000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 5
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f4a27
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4a52
mov eax, 1
mov edi, ebx
movzx esi, word [esp + 0x50]
xor edx, edx
mov dword [esp + 0xc], esi
cmp esi, 0x94
setne dl
mov esi, dword [esp + 0x7c]
xor ebx, ebx
mov dword [esp + 0x34], esi
test esi, esi
setne bl
add edx, eax
mov dword [esp + 0x30], ebx
add edx, ebx
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x1c], edx
mov esi, dword [edi]
xor eax, eax
cmp dword [esi], 0
mov ebx, edi
jne 0x5f638d
mov eax, dword [esp + 0x3c]
lea eax, [eax*4]
mov edx, 0x11
mov ecx, esi
push 0
push 2
push eax
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4973
or byte [eax + 1], 0x28
xor eax, eax
cmp dword [esi], 0
mov ecx, dword [esp + 8]
jne 0x5f638d
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f49a0
mov byte [eax], 0x3b
xor eax, eax
cmp dword [esi], 0
mov ecx, dword [esp + 8]
jne 0x5f638d
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5e9f
lea ecx, [eax + ecx + 8]
mov dword [eax + 4], edx
mov eax, ecx
jmp 0x5f5eca
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, dword [esp]
mov word [eax], pe_nt_image_headers32
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x5f7df8
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp 0x5f7df8
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, dword [esp]
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
jne 0x5f7df8
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f4beb
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4c18
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7def
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x30000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 5
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f4b2d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4b58
mov dword [esp + 0x24], 0
mov edx, dword [esp]
mov edi, dword [esp + 0x14]
mov ebx, ebp
jmp case.0x5f8631.1
mov dword [esp + 0x1c], ebp
test esi, esi
je 0x5f4c2b
mov edx, dword [esp]
mov ebp, esi
cmp dword [ebp + 0xc], ebx
je 0x5f4cf5
mov esi, dword [ebp]
test esi, esi
jne 0x5f4b16
jmp 0x5f4c2d
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, dword [esp]
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
jne 0x5f7df8
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f4e7e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4eab
test eax, eax
jne 0x5f7359
mov eax, dword [edi + 0x58]
mov ecx, dword [esp + 0x38]
add eax, dword [ecx]
mov edx, 1
mov ecx, edi
push eax
push 0x8d
push 0
push 0xc
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4bbe
mov byte [eax], 0x3b
cmp dword [edi], 0
jne 0x5f7359
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7294
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f72c3
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp]
mov ecx, dword [ebp + 0xc]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebp + 0xc], eax
jmp 0x5f7df8
xor ebp, ebp
xor edi, edi
mov esi, dword [esp + 8]
cmp dword [esi], 0
jne 0x5f8965
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x10]
cmp edx, 0x7f8
mov edi, esi
ja 0x5f5ad4
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
mov edx, dword [esp]
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], ebx
test ebp, ebp
cmove ebp, dword [esp + 0x98]
mov dword [ebp], eax
mov ebp, eax
jmp 0x5f4cf9
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f4de8
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x4000
mov edx, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov dword [esp], eax
mov dword [esi + 0x1c], eax
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f4db7
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4dde
mov edi, dword [esp + 8]
mov esi, dword [esp + 4]
mov ecx, dword [esi + 0x3c]
mov eax, dword [esi + 0x64]
test eax, eax
je 0x5f5013
test ecx, ecx
je 0x5f501b
mov edx, 0x20
mov dword [esp + 8], edi
mov ecx, edi
push dword [esi + 0x20]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edi, dword [esi]
xor eax, eax
cmp dword [edi], 0
jne 0x5f8014
mov edx, 0x11
mov ecx, edi
push 0
push 2
push 8
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4d5e
or byte [eax + 1], 0x28
xor eax, eax
cmp dword [edi], 0
jne 0x5f8014
mov edx, 1
mov ecx, edi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f4d87
mov byte [eax], 0x3b
xor eax, eax
cmp dword [edi], 0
jne 0x5f8014
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7e75
lea ecx, [eax + ecx + 8]
mov dword [esp + 0x14], ecx
mov dword [eax + 4], edx
jmp 0x5f7ea6
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f4de8
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp]
jmp 0x5f4df0
mov dword [esi], 2
xor eax, eax
mov esi, dword [ebx]
cmp dword [esi], 0
jne 0x5f4e57
mov dword [esp], eax
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f4e14
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f4e3d
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5f4e76
mov eax, dword [esi + 0x30]
mov dword [ebx], eax
mov dword [esi + 0x30], ebx
mov dword [ebx + 4], 0xc
add ebx, 8
mov eax, dword [esp]
mov dword [ebx], eax
mov ecx, esi
call fcn.005f3650
mov dword [ebx + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [ebx + 8], eax
mov dword [ecx], ebx
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
jmp 0x5f896d
mov dword [esi], 2
jmp 0x5f4e57
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp]
mov ecx, dword [ebx + 0xe0]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebx + 0xe0], eax
jmp 0x5f7df8
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5f51dd
mov eax, dword [esi + 0x30]
mov dword [edi], eax
mov dword [esi + 0x30], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x4000
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [esi + 0x1c], edi
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f50c9
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f50f4
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5297
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x4000
mov edx, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov dword [esp + 0x1c], eax
mov dword [esi + 0x1c], eax
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f50fe
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5129
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f574a
mov eax, dword [edi + 0x30]
mov dword [esi], eax
mov dword [edi + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x4000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f5137
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5162
test ecx, ecx
je 0x5f80d4
test eax, eax
mov eax, dword [esp + 0x38]
cmove eax, dword [esp + 0x58]
mov edx, 0x20
mov dword [esp + 8], edi
mov ecx, edi
push dword [eax]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edi, dword [esi]
xor eax, eax
cmp dword [edi], 0
jne 0x5f7f82
mov edx, 0x11
mov ecx, edi
push 0
push 2
push 4
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5070
or byte [eax + 1], 0x28
xor eax, eax
cmp dword [edi], 0
jne 0x5f7f82
mov edx, 1
mov ecx, edi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5099
mov byte [eax], 0x3b
xor eax, eax
cmp dword [edi], 0
jne 0x5f7f82
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7e02
lea ecx, [eax + ecx + 8]
mov dword [esp + 0x14], ecx
mov dword [eax + 4], edx
jmp 0x5f7e33
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f51dd
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5f51e5
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5297
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov ebx, dword [esp + 0x1c]
jmp 0x5f529f
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f574a
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5f5752
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5b27
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x4000
mov edx, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov dword [esp + 0xc], eax
mov dword [esi + 0x1c], eax
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f5aa6
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5acd
mov dword [esi], 2
xor edi, edi
mov esi, dword [ebx]
cmp dword [esi], 0
jne 0x5f524c
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f5206
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f5230
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5f528f
mov eax, dword [esi + 0x30]
mov dword [ebp], eax
mov dword [esi + 0x30], ebp
mov dword [ebp + 4], 0xc
add ebp, 8
mov dword [ebp], edi
mov ecx, esi
call fcn.005f3650
mov dword [ebp + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [ebp + 8], eax
mov dword [ecx], ebp
mov ebp, dword [esp + 0x18]
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
mov eax, dword [esp + 0x40]
push dword [eax]
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov edi, dword [esp]
add edi, 2
jmp 0x5f896d
mov dword [esi], 2
jmp 0x5f5248
mov dword [esi], 2
xor ebx, ebx
mov ebp, dword [esp + 4]
mov esi, dword [ebp]
cmp dword [esi], 0
jne 0x5f530f
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f52c5
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f52f3
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5f567a
mov eax, dword [esi + 0x30]
mov dword [ebp], eax
mov dword [esi + 0x30], ebp
mov dword [ebp + 4], 0xc
add ebp, 8
mov dword [ebp], ebx
mov ecx, esi
call fcn.005f3650
mov dword [ebp + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [ebp + 8], eax
mov dword [ecx], ebp
mov ebp, dword [esp + 4]
mov edx, 0x20
mov ecx, edi
push dword [ebp + 0x44]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 8
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp]
movzx eax, word [eax + 2]
mov edx, 0x26
mov ecx, edi
push eax
push 0x40
push 4
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x26
mov ecx, edi
push 0
push 3
push 0x20
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push dword [ebp + 0x20]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 0xc
push 8
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 3
push 0xc
push 0x82
call fcn.005f2690
add esp, 0x10
cmp dword [ebp + 0x3c], 0
mov ebx, ebp
je 0x5f53ec
mov edx, 0x20
mov ecx, edi
push 0x14
push 0x81
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov esi, dword [esp]
movzx eax, word [esi + 4]
mov edx, 0x26
mov ecx, edi
push eax
push 0x40
push 0x28
push 0x82
call fcn.005f2690
add esp, 0x10
movzx eax, word [esi + 6]
mov edx, 0x26
mov ecx, edi
push eax
push 0x40
push 0x2c
push 0x82
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x58]
cmp dword [eax], 0
mov eax, 3
mov ecx, 0x40
cmove eax, ecx
mov edx, 0x20
mov ecx, edi
push 0
push eax
push 0x30
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 2
push 0
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 2
push 0
push 2
call fcn.005f2690
add esp, 0x10
cmp dword [edi], 0
je 0x5f5541
sub esp, 0xc
mov edx, 0x1113
mov ecx, edi
push 0x6211d0
call fcn.005fc740
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 0x8d
push 0
push 2
call fcn.005f2690
add esp, 0x10
mov ecx, dword [ebx]
cmp dword [ecx], 0
jne 0x5f54dd
mov edx, 0x11
push 0
push 2
push 0x38
push 0x40
call fcn.005fdd80
add esp, 0x10
mov ecx, dword [edi]
test ecx, ecx
jne 0x5f5508
mov edx, 0x11
mov ecx, edi
push 0
push 1
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5502
or byte [eax + 1], 0x38
mov ecx, dword [edi]
test ecx, ecx
je 0x5f5575
cmp dword [ebx + 0xb4], 0
je 0x5f596b
test ecx, ecx
mov edx, dword [esp]
jne 0x5f5972
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f55bd
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f55ea
mov eax, dword [edi + 0x58]
mov ecx, dword [esp + 0x38]
add eax, dword [ecx]
je 0x5f5596
mov edx, 1
mov ecx, edi
push eax
push 0x8d
push 0
push 3
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5490
mov byte [eax], 0x8d
jmp 0x5f5490
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5685
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f56b2
mov edx, 1
mov ecx, edi
push 0
push 3
push 0
push 0xd
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5490
mov byte [eax], 0x89
jmp 0x5f5490
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f5a95
mov eax, dword [edi + 0x30]
mov dword [esi], eax
mov dword [edi + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f5625
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5650
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5a95
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, dword [esp]
mov word [eax], pe_nt_image_headers32
mov eax, dword [ebx + 0xb4]
test eax, eax
je 0x5f5972
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp 0x5f5972
mov dword [esi], 2
jmp 0x5f530b
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f5953
mov eax, dword [edi + 0x30]
mov dword [esi], eax
mov dword [edi + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x10000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f56ed
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5718
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5953
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov ecx, dword [edi]
test ecx, ecx
jne 0x5f5508
mov ecx, dword [edi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f590c
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
xor ecx, ecx
jmp 0x5f5935
mov dword [edi], 2
xor esi, esi
mov edi, dword [ebx]
cmp dword [edi], 0
jne 0x5f57bd
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f5773
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f57a1
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5f5901
mov eax, dword [edi + 0x30]
mov dword [ebp], eax
mov dword [edi + 0x30], ebp
mov dword [ebp + 4], 0xc
add ebp, 8
mov dword [ebp], esi
mov ecx, edi
call fcn.005f3650
mov dword [ebp + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [ebp + 8], eax
mov dword [ecx], ebp
mov ebp, dword [esp + 0x18]
mov edx, 0x20
mov ecx, ebp
push 0
push 8
push 0
push 1
call fcn.005f2690
add esp, 0x10
xor eax, eax
cmp dword [ebx + 0x68], 0
setne al
shl eax, 4
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp]
lea esi, [eax + 4]
mov edx, 0x20
mov ecx, ebp
push esi
push 0x40
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push dword [ebx + 0x3c]
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push 0x14
push 0x81
call fcn.005f2690
add esp, 0x10
cmp dword [ebx + 0x68], 0
je 0x5f58f1
mov edx, 0x20
mov ecx, ebp
push dword [ebx + 0x40]
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 2
push dword [ebx + 0x40]
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0x40
push 4
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push esi
push 0x40
push 8
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push 0xc
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov ecx, dword [esp]
movzx eax, word [ecx + 2]
lea edi, [ecx + eax*2 + 6]
jmp 0x5f896d
mov dword [edi], 2
jmp 0x5f57b9
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5953
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [edi]
mov ebp, dword [esp + 8]
mov edx, dword [ebp + 0xc]
mov dword [eax + 4], edx
mov dword [eax], esi
mov dword [ebp + 0xc], eax
cmp dword [ebx + 0xb4], 0
jne 0x5f5515
jmp 0x5f596b
mov dword [edi], 2
mov ecx, 2
cmp dword [ebx + 0xb4], 0
jne 0x5f5515
test ecx, ecx
mov edx, dword [esp]
je 0x5f597a
add edx, 8
jmp 0x5f7dfb
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f5994
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f59c1
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f5a95
mov eax, dword [edi + 0x30]
mov dword [esi], eax
mov dword [edi + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f59fc
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5a27
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5a95
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, dword [esp]
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
jne 0x5f5972
mov ecx, dword [edi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f5a52
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5a79
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5a95
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp]
mov ecx, dword [ebx + 0xdc]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebx + 0xdc], eax
add edx, 8
jmp 0x5f7dfb
mov dword [edi], 2
mov edx, dword [esp]
add edx, 8
jmp 0x5f7dfb
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5b27
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5f5b35
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f5b12
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 0x10
mov ecx, edi
xor edi, edi
cmp dword [ecx], 0
mov edx, dword [esp]
jne 0x5f8965
add eax, 8
mov edi, ecx
jmp 0x5f4c5d
mov dword [edi], 2
xor edi, edi
test edi, edi
jne 0x5f896d
jmp case.0x5f8474.97
mov dword [esi], 2
mov dword [esp + 0xc], 0
mov esi, dword [ebx]
cmp dword [esi], 0
jne 0x5f5ba2
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f5b56
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f5b83
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5f5d3f
mov eax, dword [esi + 0x30]
mov dword [ebx], eax
mov dword [esi + 0x30], ebx
mov dword [ebx + 4], 0xc
add ebx, 8
mov eax, dword [esp + 0xc]
mov dword [ebx], eax
mov ecx, esi
call fcn.005f3650
mov dword [ebx + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [ebx + 8], eax
mov dword [ecx], ebx
mov ebx, dword [esp + 4]
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x40]
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
cmp dword [esp + 0x34], 0
je 0x5f5be0
mov edx, 0x20
mov ecx, ebp
push dword [ebx + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edi, ebx
cmp dword [ebp], 0
je 0x5f5cba
xor esi, esi
cmp dword [esp + 0x30], 0x94
je 0x5f5c17
mov edx, 0x20
mov ecx, ebp
push 1
push 0x40
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov esi, 1
cmp dword [esp + 0x34], 0
je 0x5f5c3f
lea eax, [esi*4]
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
inc esi
mov ebx, edi
cmp dword [esp + 8], 0
jne 0x5f5c69
lea eax, [esi*4]
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
inc esi
lea eax, [esi*4]
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x3c]
dec eax
sub esp, 4
mov ecx, ebx
mov edx, dword [esp + 4]
push 0
push eax
push 0
call fcn.0061aa60
add esp, 0x10
mov ecx, dword [esp + 8]
cmp ecx, 1
mov eax, 1
adc eax, 0
sub esi, eax
jmp 0x5f65e6
mov eax, dword [esp + 0x3c]
lea ebx, [eax*4]
mov esi, dword [ebp + 0x58]
add esi, dword [esp + 0x40]
mov edx, 1
mov ecx, ebp
push ebx
push 0x82
push 0
push 0xe
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5d11
mov byte [eax], 0x8d
mov edx, 1
mov ecx, ebp
push esi
push 0x8d
push 0
push 0xe
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f5d11
mov byte [eax], 0x89
jmp 0x5f5bec
cmp dword [ebp], 4
jne 0x5f5bec
sub esp, 8
mov edx, 0x5030100
mov ecx, ebp
push ebx
push 0x40
push 0
push 2
push esi
push 0x8d
call fcn.005fe840
add esp, 0x20
jmp 0x5f5bec
mov dword [esi], 2
jmp 0x5f5b9e
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f6088
mov eax, dword [ebx + 0x30]
mov dword [esi], eax
mov dword [ebx + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x4000
mov eax, dword [ebx + 0x1c]
lea ecx, [ebx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [ebx + 0x1c], esi
add dword [ebx + 0x48], 6
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f5f0e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5f39
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f6138
mov eax, dword [ebx + 0x30]
mov dword [esi], eax
mov dword [ebx + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x4000
mov eax, dword [ebx + 0x1c]
lea ecx, [ebx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [ebx + 0x1c], esi
add dword [ebx + 0x48], 6
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f5f43
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5f6e
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f79cc
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x30]
mov dword [esi], eax
mov dword [ecx + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x8000
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edx + 0x1c], esi
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f5f78
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f5fa7
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6381
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x4000
mov edx, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov edi, eax
mov dword [esi + 0x1c], eax
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f604d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f6078
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6088
mov ecx, dword [ebx + 0x2c]
mov dword [eax], ecx
mov dword [ebx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5f6090
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6138
mov ecx, dword [ebx + 0x2c]
mov dword [eax], ecx
mov dword [ebx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5f6140
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f79cc
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, ebp
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp + 0x14]
cmp dword [eax], 0
jne 0x5f79d8
mov ecx, dword [eax + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7992
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f79bd
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7353
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f632f
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f635a
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6381
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov ecx, dword [esp + 8]
mov eax, edi
jmp 0x5f638d
mov dword [ebx], 2
xor esi, esi
mov eax, dword [esp + 4]
mov ebx, dword [eax]
cmp dword [ebx], 0
jne 0x5f60fb
mov dword [esp], esi
mov eax, dword [ebx + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f60b8
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f60e1
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f6130
mov eax, dword [ebx + 0x30]
mov dword [esi], eax
mov dword [ebx + 0x30], esi
mov dword [esi + 4], 0xc
add esi, 8
mov eax, dword [esp]
mov dword [esi], eax
mov ecx, ebx
call fcn.005f3650
mov dword [esi + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [esi + 8], eax
mov dword [ecx], esi
mov edx, 0x20
mov esi, dword [esp + 0x18]
mov ecx, esi
push 0
push 0x40
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push 0
push 0xc
push 4
push 0x82
jmp 0x5f61c5
mov dword [ebx], 2
jmp 0x5f60fb
mov dword [ebx], 2
xor esi, esi
mov eax, dword [esp + 4]
mov ebx, dword [eax]
cmp dword [ebx], 0
jne 0x5f61af
mov dword [esp], esi
mov eax, dword [ebx + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f6168
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f6195
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f6324
mov eax, dword [ebx + 0x30]
mov dword [esi], eax
mov dword [ebx + 0x30], esi
mov dword [esi + 4], 0xc
add esi, 8
mov eax, dword [esp]
mov dword [esi], eax
mov ecx, ebx
call fcn.005f3650
mov dword [esi + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [esi + 8], eax
mov dword [ecx], esi
mov edx, 0x20
mov esi, dword [esp + 0x18]
mov ecx, esi
push 0
push 0xc
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
add edi, 4
mov ecx, esi
call fcn.005f3650
mov dword [ebp + 0x14], eax
mov ebx, dword [esp + 4]
mov esi, dword [ebx]
sub esp, 8
mov edx, 0x262
mov ecx, esi
push 1
push 0x40
push 0
push 9
push 0
push 9
call fcn.005f2d00
add esp, 0x20
cmp dword [esi], 0
jne 0x5f896d
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f6221
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f624e
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5f6319
mov eax, dword [esi + 0x30]
mov dword [ebx], eax
mov dword [esi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [esi + 0x1c], ebx
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f6289
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f62b0
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6319
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [esi], 0
jne 0x5f896d
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f62d8
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f62ff
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6319
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp + 4]
mov ecx, dword [edx + 0xe4]
mov dword [eax + 4], ecx
mov dword [eax], ebx
mov dword [edx + 0xe4], eax
jmp 0x5f896d
mov dword [esi], 2
jmp 0x5f896d
mov dword [ebx], 2
jmp 0x5f61af
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7353
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x5f7359
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp 0x5f7359
mov dword [esi], 2
xor eax, eax
mov ecx, dword [esp + 8]
mov esi, dword [ebx]
cmp dword [esi], 0
je 0x5f6490
cmp dword [esp + 0x48], 0xffffffff
je 0x5f650d
test ecx, ecx
je 0x5f6535
mov eax, dword [ebx + 0x20]
lea esi, [ecx*4]
lea eax, [eax + ecx*4]
mov edx, 0x20
mov ecx, ebp
push eax
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
or esi, 4
add esi, dword [ebx + 0x20]
mov edx, 0x20
mov ecx, ebp
push esi
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov eax, dword [ebx + 0x44]
test eax, eax
je 0x5f642a
mov edx, 0x20
mov ecx, ebp
push eax
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push 4
push 0x82
call fcn.005f2690
add esp, 0x10
cmp dword [esp + 0x34], 0
je 0x5f6466
mov edx, 0x20
mov ecx, ebp
push dword [ebx + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
cmp dword [ebx + 0x44], 0
je 0x5f64ac
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push 8
push 0x82
call fcn.005f2690
add esp, 0x10
mov esi, 3
jmp 0x5f6576
mov edi, eax
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f64b6
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f64e3
mov esi, 2
jmp 0x5f6576
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5f70f8
mov eax, dword [esi + 0x30]
mov dword [ebx], eax
mov dword [esi + 0x30], ebx
mov dword [ebx + 4], 0xc
add ebx, 8
mov dword [ebx], edi
mov ecx, esi
call fcn.005f3650
mov dword [ebx + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [ebx + 8], eax
mov dword [ecx], ebx
mov ebx, dword [esp + 4]
mov ecx, dword [esp + 8]
cmp dword [esp + 0x48], 0xffffffff
jne 0x5f63a3
mov edx, 0x20
mov ecx, ebp
push 0
push 2
push dword [esp + 0x48]
push 0x8d
call fcn.005f2690
mov ecx, dword [esp + 0x18]
add esp, 0x10
test ecx, ecx
jne 0x5f63ab
cmp dword [esp + 0x34], 0
je 0x5f6557
mov edx, 0x20
mov ecx, ebp
push dword [ebx + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov esi, 1
mov ecx, dword [esp + 0x30]
add ecx, esi
cmp dword [esp + 0xc], 0x94
je 0x5f65ae
lea eax, [ecx*4]
mov edx, 0x20
mov edi, ebx
mov ebx, ecx
mov ecx, ebp
push 1
push 0x40
push eax
push 0x82
call fcn.005f2690
mov ecx, ebx
mov ebx, edi
add esp, 0x10
cmp dword [esp + 0x34], 0
je 0x5f65da
lea eax, [ecx*4 - 4]
dec ecx
mov edx, 0x20
mov esi, ecx
mov ecx, ebp
push 0
push 3
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
jmp 0x5f65e2
mov dword [esp + 0x34], 0
mov ecx, dword [esp + 8]
mov dword [esp + 0x30], esi
test ecx, ecx
je 0x5f660a
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push dword [esp + 0x4c]
push 0x8d
call fcn.005f2690
add esp, 0x10
lea eax, [ebp + 0x30]
mov dword [esp + 0xc], eax
mov ecx, ebp
call fcn.005f3650
mov dword [esp + 0x78], eax
mov esi, dword [esp]
movzx eax, word [esi]
cmp eax, 0x7b
jne 0x5f66bf
mov eax, dword [esp + 0x1c]
add eax, 0xc
mov ecx, eax
xor edi, edi
mov dword [esp + 0x24], ecx
mov ebx, dword [esp + 0x48]
movzx eax, word [esp + 0x50]
cmp eax, 0x94
mov dword [ecx], 0
je 0x5f7a77
test ebx, ebx
mov eax, dword [ebp]
js 0x5f707a
test eax, eax
jne 0x5f7a77
mov eax, dword [esp + 0x3c]
neg eax
shl eax, 2
mov edx, 0x11
mov ecx, ebp
push eax
push 0x83
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f6691
or byte [eax + 1], 0x38
cmp dword [ebp], 0
jne 0x5f7a77
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7103
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f7132
mov edi, dword [esp + 0x1c]
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
movzx eax, word [esi + 2]
lea esi, [esi + eax*2]
sub esp, 8
mov ecx, ebx
mov edx, dword [esp + 0x2c]
push edi
mov dword [esp + 0xc], esi
push esi
call fcn.005f3730
add esp, 0x10
xor edi, edi
cmp dword [ebp], 0
jne 0x5f8965
mov eax, dword [esp + 0x1c]
lea eax, [eax + 0xc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 8]
lea ecx, [eax*4]
mov dword [esp + 0x74], ecx
or ecx, 4
mov dword [esp + 0x70], ecx
shr eax, 1
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x3c]
lea ecx, [eax*4]
shl dword [esp + 0x30], 2
mov edx, 0xfffffffe
sub edx, dword [esp + 0x48]
shl edx, 2
mov dword [esp + 0x60], edx
mov dword [esp + 0x6c], ecx
neg ecx
mov dword [esp + 0x90], ecx
lea eax, [eax*4 - 4]
mov dword [esp + 0x94], eax
lea eax, [ebp + 0xc]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x4c], 0
jmp 0x5f6a95
mov dword [ebp], 2
jmp 0x5f6d89
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f681b
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f684a
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f68e2
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f6911
cmp dword [ebp], 4
jne 0x5f69fa
mov edx, 1
mov ecx, ebp
push 0
push 2
push 0
push 3
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f69f0
mov byte [eax], 0x89
mov edx, 0x11
mov ecx, ebp
push 0
push 2
push dword [esp + 0x74]
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f69fa
or byte [eax + 1], 0x28
jmp 0x5f69fa
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f69e4
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0
mov eax, dword [ebp + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x5c]
mov dword [eax], esi
mov dword [ebp + 0x1c], esi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f6884
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f68af
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f69e4
mov ecx, dword [ebp + 0x2c]
mov dword [eax], ecx
mov dword [ebp + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [ebp], 0
jne 0x5f6beb
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f69a9
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f69d2
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f6a89
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0
mov eax, dword [ebp + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x5c]
mov dword [eax], esi
mov dword [ebp + 0x1c], esi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f694b
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f6976
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6a89
mov ecx, dword [ebp + 0x2c]
mov dword [eax], ecx
mov dword [ebp + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [ebp], 0
jne 0x5f6d54
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f6a4e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f6a77
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f69e4
mov edx, dword [esp + 0xc]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [esp + 0x4c], eax
jmp 0x5f6beb
mov dword [ebp], 2
jmp 0x5f6beb
cmp dword [ebp], 0
je 0x5f67f1
movzx eax, word [esp + 0x54]
cmp eax, 0x89
jne 0x5f6a22
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x60]
push 0x83
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push dword [esp + 0x68]
push 0x83
call fcn.005f2690
add esp, 0x10
cmp dword [esp + 0x34], 0
jne 0x5f6b8b
jmp 0x5f6bac
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6a89
mov edx, dword [esp + 0xc]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [esp + 0x4c], eax
jmp 0x5f6d54
mov dword [ebp], 2
jmp 0x5f6d54
mov ebx, dword [esp + 0x48]
test ebx, ebx
mov eax, dword [esp + 8]
js 0x5f6c12
test eax, eax
mov edi, dword [esp]
mov ebp, dword [esp + 0x14]
je 0x5f6e74
mov eax, dword [ebp + 0x58]
add eax, dword [esp + 0x40]
sub esp, 8
mov edx, 0x2d2b2928
mov ecx, ebp
push dword [esp + 0x74]
push 0x40
push eax
push 0x8d
push 0
push 2
call fcn.005fda00
add esp, 0x20
mov edx, 0x20
mov ecx, ebp
mov ebx, dword [esp + 0x44]
push ebx
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x20]
add eax, dword [esp + 0x70]
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push ebx
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esi + 0x44]
test eax, eax
je 0x5f6b59
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x68]
push 0x40
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
add eax, dword [esp + 0x74]
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x30]
cmp dword [esp + 0x34], 0
je 0x5f6bac
mov edx, 0x20
mov ecx, ebp
push esi
push 0x82
mov eax, dword [esp + 0xc]
push dword [eax + 0x40]
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x54]
or eax, 2
movzx eax, ax
cmp eax, 0x8b
jne 0x5f6beb
cmp dword [ebp], 0
jne 0x5f6beb
mov edx, 1
mov ecx, ebp
push 0
push 0xc
push 0
push 1
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f6be1
mov byte [eax], 0x3b
cmp dword [ebp], 0
je 0x5f677d
movzx eax, word [esp + 0x50]
cmp eax, 0x94
je 0x5f6d7f
mov edx, 0x20
mov ecx, ebp
push 0
push 0x40
push 0
push 0x82
jmp 0x5f6d77
cmp ebx, 0xffffffff
mov edi, dword [esp]
mov ebp, dword [esp + 0x14]
jne 0x5f6c3e
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x40]
push 0x8d
push 0
push 2
call fcn.005f2690
mov eax, dword [esp + 0x18]
add esp, 0x10
test eax, eax
je 0x5f6fbe
mov edx, 0x20
mov ecx, ebp
mov ebx, dword [esp + 0x44]
push ebx
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x20]
add eax, dword [esp + 0x70]
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push ebx
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esi + 0x44]
test eax, eax
je 0x5f6cc2
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x68]
push 0x40
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x38]
mov eax, dword [eax]
add eax, dword [esp + 0x74]
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push eax
push 0x8d
call fcn.005f2690
add esp, 0x10
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x30]
cmp dword [esp + 0x34], 0
je 0x5f6d15
mov edx, 0x20
mov ecx, ebp
push esi
push 0x82
mov eax, dword [esp + 0xc]
push dword [eax + 0x40]
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x54]
or eax, 2
movzx eax, ax
cmp eax, 0x8b
jne 0x5f6d54
cmp dword [ebp], 0
jne 0x5f6d54
mov edx, 1
mov ecx, ebp
push 0
push 0xc
push 0
push 1
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f6d4a
mov byte [eax], 0x3b
cmp dword [ebp], 0
je 0x5f67a1
movzx eax, word [esp + 0x50]
cmp eax, 0x94
je 0x5f6d7f
mov edx, 0x20
mov ecx, ebp
push 0
push 0x40
push dword [esp + 0x9c]
push 0x82
call fcn.005f2690
add esp, 0x10
cmp dword [ebp], 0
je 0x5f6e2c
mov esi, dword [esp + 4]
mov ecx, esi
call fcn.005fc4b0
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 8]
mov ecx, esi
call fcn.005f8fa0
cmp dword [ebp], 0
jne 0x5f70dc
mov eax, dword [esp + 0x24]
mov esi, dword [eax]
mov ecx, ebp
call fcn.005f3650
test esi, esi
je 0x5f6de0
nop dword [eax]
test eax, eax
je 0x5f6dd9
mov ecx, dword [esi]
test ecx, ecx
je 0x5f6dd9
mov edx, dword [ecx + 8]
and edx, 0xfffffffc
or edx, 1
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov esi, dword [esi + 4]
test esi, esi
jne 0x5f6dc0
test ebx, ebx
js 0x5f6e50
cmp dword [esp + 8], 0
je 0x5f6ecd
movzx eax, word [edi]
cmp eax, 0x7b
jne 0x5f6e13
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x44]
push 0x8d
push 0
push 0xc
jmp 0x5f7024
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f6f02
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f6f31
cmp dword [esp + 8], 0
je 0x5f7012
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x44]
push 0x8d
push 0
push 0xc
jmp 0x5f7024
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
cmp dword [ebp], 0
mov esi, dword [esp + 0x30]
jne 0x5f69fa
mov edx, 1
mov ecx, ebp
push dword [esp + 0x90]
push 0x83
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f67c5
mov byte [eax], 0x8d
jmp 0x5f69fa
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x40]
push 0x8d
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x60]
push 0x83
push 0
push 0xc
jmp 0x5f7024
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f6771
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x30000
mov eax, dword [ebp + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x5c]
mov dword [eax], esi
mov dword [ebp + 0x1c], esi
add dword [ebp + 0x48], 5
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f6f6b
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f6f96
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f6771
mov ecx, dword [ebp + 0x2c]
mov dword [eax], ecx
mov dword [ebp + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
cmp dword [esp + 0x78], 0
mov word [eax], pe_nt_image_headers32
je 0x5f6d89
mov eax, dword [esi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [esi + 8], eax
mov eax, dword [esp + 0x78]
mov dword [esi + 0xc], eax
jmp 0x5f6d89
movzx eax, word [esp + 0x54]
cmp eax, 0x89
mov esi, dword [esp + 0x30]
jne 0x5f6fe8
mov edx, 0x20
mov ecx, ebp
push 0
push 0x82
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
cmp dword [esp + 0x34], 0
jne 0x5f6cf4
jmp 0x5f6d15
mov edx, 0x20
mov ecx, ebp
push 0
push 0x82
push 0
push 0xc
call fcn.005f2690
add esp, 0x10
movzx eax, word [edi]
cmp eax, 0x7b
je 0x5f70eb
mov ebx, ebp
mov ebp, dword [esp + 0x1c]
mov dword [ebp + 8], 0
mov dword [ebp + 0xc], 0
movzx eax, word [edi + 2]
lea esi, [edi + eax*2]
lea edx, [edi + 4]
sub esp, 8
mov ecx, dword [esp + 0xc]
push ebp
push esi
call fcn.005f3730
add esp, 0x10
xor edi, edi
cmp dword [ebx], 0
mov dword [esp], esi
je 0x5f6a95
jmp 0x5f8965
test eax, eax
jne 0x5f7a77
mov eax, dword [esp + 0x3c]
lea eax, [eax*4 - 4]
mov edx, 0x11
mov ecx, ebp
push eax
push 0x82
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f70ae
or byte [eax + 1], 0x38
cmp dword [ebp], 0
jne 0x5f7a77
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f71cc
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f71fb
xor edi, edi
test edi, edi
jne 0x5f896d
jmp case.0x5f8474.97
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x4c]
jmp 0x5f663e
mov dword [esi], 2
jmp 0x5f64fa
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7a70
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [ebp + 0x1c], esi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f716d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7198
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7a70
mov ecx, dword [ebp + 0x2c]
mov dword [eax], ecx
mov dword [ebp + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [ebp], 0
jne 0x5f7a77
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
jbe 0x5f7288
sub esp, 0xc
push 0x800
jmp 0x5f7a40
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7a70
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [ebp + 0x1c], esi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f7236
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7261
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7a70
mov ecx, dword [ebp + 0x2c]
mov dword [eax], ecx
mov dword [ebp + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [ebp], 0
jne 0x5f7a77
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7a38
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7a61
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7353
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f72fe
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7325
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7353
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
jne 0x5f7359
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7c05
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7c32
mov dword [edi], 2
mov edx, 0x20
mov ecx, edi
push 0
push 8
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov edx, 0x21
mov ecx, edi
push 0x2a
push 0x81
push 0
push 3
call fcn.005f2690
add esp, 0x10
cmp dword [edi], 0
jne 0x5f73b7
mov edx, 0x11
mov ecx, edi
push 0
push 3
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f73ae
or byte [eax + 1], 0x38
cmp dword [edi], 0
je 0x5f7484
mov edx, 0x21
mov ecx, edi
push 0x2b
push 0x81
push 0
push 3
call fcn.005f2690
add esp, 0x10
cmp dword [ebx + 0xb8], 0
mov eax, dword [edi]
je 0x5f7430
test eax, eax
jne 0x5f76e9
mov edx, 0x11
mov ecx, edi
push 0
push 3
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f7403
or byte [eax + 1], 0x38
cmp dword [edi], 0
jne 0x5f76e9
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7568
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f7597
test eax, eax
jne 0x5f76e9
mov edx, 0x11
mov ecx, edi
push 0
push 3
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f7457
or byte [eax + 1], 0x38
cmp dword [edi], 0
jne 0x5f76e9
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7624
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f7653
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f74a1
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f74d0
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7987
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f750b
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7536
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7987
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
jne 0x5f73b7
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f794e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7977
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f76e3
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f75d2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f75fd
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f76e3
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x5f76e9
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp 0x5f76e9
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f76e3
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f768e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f76b5
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f76e3
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
jne 0x5f76e9
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7c4c
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7c79
mov dword [edi], 2
mov edx, 0x20
mov ecx, edi
push 4
push 0x81
push 0
push 3
call fcn.005f2690
add esp, 0x10
cmp dword [ebx + 0xb8], 0
mov eax, dword [edi]
je 0x5f7763
test eax, eax
mov edx, dword [esp]
jne 0x5f7df8
mov edx, 1
mov ecx, edi
push 0
push 0xc
push 0
push 3
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f7737
mov byte [eax], 0x3b
cmp dword [edi], 0
mov edx, dword [esp]
jne 0x5f7df8
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f77bc
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f77eb
test eax, eax
mov edx, dword [esp]
jne 0x5f7df8
mov edx, 1
mov ecx, edi
push 0
push 0xc
push 0
push 3
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f778c
mov byte [eax], 0x3b
cmp dword [edi], 0
mov edx, dword [esp]
jne 0x5f7df8
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7884
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f78b3
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7def
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f7826
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7851
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov edx, dword [esp]
mov word [eax], pe_nt_image_headers32
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x5f7cd8
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
cmp dword [edi], 0
jne 0x5f7df8
jmp 0x5f7ce1
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7def
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f78ee
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7919
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
mov edx, dword [esp]
jne 0x5f7df8
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7c93
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7cc0
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7987
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [ebp + 0xc]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebp + 0xc], eax
jmp 0x5f73b7
mov dword [edi], 2
jmp 0x5f73b7
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f79cc
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x30]
mov dword [eax], ecx
mov dword [edx + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp + 0x1c]
mov ecx, dword [edx]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [edx], eax
jmp 0x5f79d6
mov eax, dword [esp + 0x14]
mov dword [eax], 2
mov edx, ebp
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x84], 0
lea esi, [esp + 0x7c]
mov ebp, dword [esp + 0x1c]
nop word cs:[eax + eax]
movzx eax, word [edx]
mov edi, edx
xor edx, edx
cmp eax, 0x1e
sete dl
add edi, 2
sub esp, 4
mov ecx, ebx
push ebp
push esi
push edi
call fcn.006207b0
add esp, 0x10
mov edx, eax
cmp dword [esp + 0x7c], 0
jg 0x5f7a00
mov edi, edx
test edi, edi
jne 0x5f896d
jmp case.0x5f8474.97
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7a70
mov edx, dword [esp + 0xc]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp + 0x24]
mov ecx, dword [edx]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [edx], eax
jmp 0x5f7a77
mov dword [ebp], 2
mov ecx, ebp
call fcn.005f3650
test edi, edi
je 0x5f7ab0
nop word cs:[eax + eax]
test eax, eax
je 0x5f7aa9
mov ecx, dword [edi]
test ecx, ecx
je 0x5f7aa9
mov edx, dword [ecx + 8]
and edx, 0xfffffffc
or edx, 1
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov edi, dword [edi + 4]
test edi, edi
jne 0x5f7a90
mov ebx, dword [esp + 4]
mov esi, dword [ebx]
sub esp, 8
mov edx, 0x262
mov ecx, esi
push 1
push 0x40
push 0
push 9
push 0
push 9
call fcn.005f2d00
add esp, 0x20
cmp dword [esi], 0
je 0x5f7aec
mov edi, dword [esp]
add edi, 4
test edi, edi
jne 0x5f896d
jmp case.0x5f8474.97
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7b06
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f7b33
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5f7bfa
mov eax, dword [esi + 0x30]
mov dword [edi], eax
mov dword [esi + 0x30], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [esi + 0x1c], edi
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f7b6e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7b95
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7bfa
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [esi], 0
jne 0x5f7ad9
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7bbd
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7be4
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7bfa
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [ebx + 0xe4]
mov dword [eax + 4], ecx
mov dword [eax], edi
mov dword [ebx + 0xe4], eax
jmp 0x5f7ad9
mov dword [esi], 2
jmp 0x5f7ad9
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7f1b
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ebx, dword [esp + 4]
mov ecx, dword [ebx + 0xe0]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebx + 0xe0], eax
jmp 0x5f7359
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7f2a
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ebx, dword [esp + 4]
mov ecx, dword [ebx + 0xe0]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebx + 0xe0], eax
jmp 0x5f76e9
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ebx, dword [esp + 4]
mov ecx, dword [ebx + 0xe0]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebx + 0xe0], eax
mov edx, dword [esp]
cmp dword [edi], 0
jne 0x5f7df8
mov eax, dword [esp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f7cfe
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f7d2d
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f7def
mov ecx, dword [esp + 8]
mov eax, dword [ecx]
mov dword [esi], eax
mov dword [ecx], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0x30000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edi + 0x1c], esi
add dword [edi + 0x48], 5
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f7d68
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7d8f
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [edi], 0
mov edx, dword [esp]
jne 0x5f7df8
mov eax, dword [esp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f7db9
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7de2
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7def
mov edx, dword [esp + 8]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [ebp + 0xc]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [ebp + 0xc], eax
jmp 0x5f7df5
mov dword [edi], 2
mov edx, dword [esp]
add edx, 2
mov edi, edx
jmp 0x5f896d
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x5f7f76
mov eax, dword [edi + 0x30]
mov dword [ecx], eax
mov dword [edi + 0x30], ecx
mov dword [ecx + 4], 0x10
add ecx, 8
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x14]
mov dword [edx], 0
mov dword [edx + 8], 0x4000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edx
mov dword [edi + 0x1c], edx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f7ee5
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7f0c
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x5f8008
mov eax, dword [edi + 0x30]
mov dword [ecx], eax
mov dword [edi + 0x30], ecx
mov dword [ecx + 4], 0x10
add ecx, 8
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x14]
mov dword [edx], 0
mov dword [edx + 8], 0x4000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edx
mov dword [edi + 0x1c], edx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f7f39
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f7f64
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f7f76
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x14]
jmp 0x5f7f82
mov dword [edi], 2
mov ebx, dword [esp + 4]
jmp 0x5f7359
mov dword [edi], 2
mov ebx, dword [esp + 4]
jmp 0x5f76e9
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8008
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x14]
jmp 0x5f8014
mov dword [edi], 2
xor eax, eax
mov esi, dword [esp + 4]
mov edi, dword [esi]
cmp dword [edi], 0
jne 0x5f7fe5
mov esi, eax
mov ebx, dword [edi + 0x30]
mov ecx, dword [ebx + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f7fa5
lea eax, [ebx + ecx + 8]
mov dword [ebx + 4], edx
jmp 0x5f7fcc
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8000
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 0xc
add eax, 8
mov dword [eax], esi
mov esi, eax
mov ecx, edi
call fcn.005f3650
mov dword [esi + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [esi + 8], eax
mov dword [ecx], esi
mov edx, 0x20
mov edi, dword [esp + 8]
mov ecx, edi
push 0
push 3
push 0
push 0x82
jmp 0x5f80c9
mov dword [edi], 2
jmp 0x5f7fe5
mov dword [edi], 2
xor eax, eax
mov esi, dword [esp + 4]
mov edi, dword [esi]
cmp dword [edi], 0
jne 0x5f807b
mov esi, eax
mov ebx, dword [edi + 0x30]
mov ecx, dword [ebx + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f8037
lea eax, [ebx + ecx + 8]
mov dword [ebx + 4], edx
jmp 0x5f8062
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f82ba
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 0xc
add eax, 8
mov dword [eax], esi
mov esi, eax
mov ecx, edi
call fcn.005f3650
mov dword [esi + 4], eax
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [esi + 8], eax
mov dword [ecx], esi
mov edx, 0x20
mov edi, dword [esp + 8]
mov ecx, edi
mov eax, dword [esp + 0x58]
push dword [eax]
push 0x8d
push 0
push 1
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 3
push 0
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 1
push 4
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, dword [esp]
cmp dword [ebp + 4], 0
je 0x5f80ff
cmp dword [edi], 0
jne 0x5f834d
mov esi, edi
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f812b
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f815a
cmp dword [edi], 0
jne 0x5f834d
mov esi, edi
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f81f4
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f8223
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5f8344
mov ecx, esi
mov eax, dword [ecx + 0x30]
mov dword [edi], eax
mov dword [ecx + 0x30], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x32000
mov edx, esi
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [edx + 0x1c], edi
add dword [edx + 0x48], 5
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f8197
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f81c4
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8344
mov edx, esi
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [ebp + 4]
test eax, eax
mov edx, dword [esp]
je 0x5f82fc
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
cmp dword [esi], 0
jne 0x5f834d
jmp 0x5f8301
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5f8344
mov ecx, esi
mov eax, dword [ecx + 0x30]
mov dword [edi], eax
mov dword [ecx + 0x30], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x32000
mov edx, esi
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [edx + 0x1c], edi
add dword [edx + 0x48], 5
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f8260
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f828d
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8344
mov edx, esi
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, esi
cmp dword [eax], 0
mov edx, dword [esp]
jne 0x5f834d
mov ecx, dword [eax + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f82c5
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f82ee
mov dword [edi], 2
jmp 0x5f807b
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8344
mov edx, esi
mov ecx, dword [edx + 0x30]
mov dword [eax], ecx
mov dword [edx + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [ebp + 8]
mov dword [eax + 4], ecx
mov dword [eax], edi
mov dword [ebp + 8], eax
mov edx, dword [esp]
cmp dword [esi], 0
jne 0x5f834d
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 0
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f8320
or byte [eax + 1], 0x38
cmp dword [esi], 0
mov edx, dword [esp]
jne 0x5f834d
mov edi, esi
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f8355
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f8384
mov dword [esi], 2
mov edx, dword [esp]
add edx, 4
jmp 0x5f7a29
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f8452
mov ecx, edi
mov eax, dword [ecx + 0x30]
mov dword [esi], eax
mov dword [ecx + 0x30], esi
mov dword [esi + 4], 0x10
add esi, 8
mov dword [esi], 0
mov dword [esi + 8], 0
mov edx, edi
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], esi
mov dword [edx + 0x1c], esi
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f83c1
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f83ea
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8452
mov edx, edi
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, edi
cmp dword [eax], 0
mov edx, dword [esp]
jne 0x5f834d
mov ecx, dword [eax + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5f8417
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f843e
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8452
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 8
add eax, 8
mov edx, dword [esp + 0x1c]
mov ecx, dword [edx + 0xc]
mov dword [eax + 4], ecx
mov dword [eax], esi
mov dword [edx + 0xc], eax
jmp 0x5f834a
mov dword [edi], 2
jmp 0x5f834a
movzx esi, word [edx]
lea eax, [esi - 1]
movzx eax, ax
cmp eax, 0xa0
ja case.0x5f8474.97
jmp dword [eax*4 + 0x5f8cf8]
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.0060d520
jmp 0x5f8960
add edx, 2
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea eax, [eax + 4]
cmove eax, dword [esp + 0x2c]
sub esp, 4
mov edi, edx
movzx edx, si
mov ecx, dword [esp + 8]
push 1
push eax
push edi
call fcn.00609bb0
jmp 0x5f8960
add edx, 2
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea eax, [eax + 4]
cmove eax, dword [esp + 0x2c]
sub esp, 8
mov edi, edx
movzx edx, si
mov ecx, dword [esp + 0xc]
push eax
push edi
call fcn.00605560
jmp 0x5f8960
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.00616e20
jmp 0x5f8960
mov eax, dword [esp + 4]
mov ebp, dword [eax]
lea edi, [edx + 2]
lea eax, [esi - 0x97]
movzx ecx, ax
cmp ecx, 4
ja 0x5f852b
mov ecx, 0x15
bt ecx, eax
jae 0x5f852b
movzx eax, word [edi]
lea edi, [edi + eax*2 + 4]
cmp dword [ebp], 0
jne case.0x5f8474.97
mov ebx, edx
mov ecx, dword [ebp + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x14]
cmp edx, 0x7f8
ja 0x5f8682
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f86b7
mov eax, dword [esp + 4]
mov eax, dword [eax]
xor edi, edi
cmp dword [eax], 0
jne 0x5f8965
mov ebp, edx
mov dword [esp + 0x14], eax
mov eax, dword [eax + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x20]
cmp edx, 0x7f8
ja 0x5f3ddd
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
mov edi, dword [esp + 4]
lea esi, [esp + 0x7c]
mov dword [esp + 0x1c], ebx
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0xc], 0
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [ebx], eax
mov dword [ebx + 0x10], ebp
mov dword [ecx], ebx
movzx eax, word [ebp]
lea ecx, [ebp + 2]
mov dword [esp + 0x50], eax
cmp eax, 0x94
cmovne ecx, ebp
movzx edx, word [ecx]
mov eax, dword [edi + 8]
mov dword [esp], ecx
mov ebp, edi
sub ecx, dword [edi + 4]
mov eax, dword [eax + ecx*2]
mov dword [esp + 0x40], eax
mov dword [ebx + 0x14], eax
mov dword [esp + 0x44], 0
mov dword [esp + 0x54], edx
lea eax, [edx - 0x84]
movzx eax, ax
xor ecx, ecx
cmp eax, 7
ja case.default.0x5f8631
mov dword [esp + 0x24], 0
mov edx, dword [esp]
mov edi, dword [esp + 0x14]
mov ebx, ebp
jmp dword [eax*4 + 0x5f8f7c]
lea eax, [edx + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x44], 0
xor ecx, ecx
jmp case.0x5f8631.1
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne case.0x5f8474.97
mov edi, edx
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x24]
cmp edx, 0x7f8
ja 0x5f88d0
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f8904
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8a64
mov ecx, dword [ebp + 0x30]
mov dword [eax], ecx
mov dword [ebp + 0x30], eax
mov dword [eax + 4], 0x14
cmp dword [ebp], 0
jne case.0x5f8474.97
add eax, 8
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [eax + 0x10], ebx
mov dword [edx], eax
movzx eax, si
cmp eax, 0x97
je 0x5f8782
cmp eax, 0x9b
je 0x5f8782
cmp eax, 0x98
jne 0x5f896d
mov ebx, dword [esp + 4]
mov esi, dword [ebx]
xor eax, eax
cmp dword [esi], 0
jne 0x5f4df0
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 4
push 0x40
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f872d
or byte [eax + 1], 0x28
xor eax, eax
cmp dword [esi], 0
jne 0x5f4df0
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 2
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f8756
mov byte [eax], 0x3b
xor eax, eax
cmp dword [esi], 0
jne 0x5f4df0
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x10]
cmp edx, 0x7f8
ja 0x5f4c85
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f4cb0
mov edx, 0x20
mov ecx, ebp
push 0
push 8
push 0
push 1
call fcn.005f2690
add esp, 0x10
add ebx, 4
mov edx, 0x20
mov ecx, ebp
push ebx
push 0x40
push 0
push 3
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
mov eax, dword [esp + 0x60]
push dword [eax]
push 0x8d
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push 0x14
push 0x81
jmp 0x5f4e69
mov eax, dword [esp + 4]
mov edi, dword [eax]
cmp dword [edi], 0
jne case.0x5f8474.97
mov dword [esp], edx
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x14]
cmp edx, 0x7f8
ja 0x5f3988
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
mov edx, dword [esp]
jmp 0x5f39c2
mov ecx, dword [esp + 4]
cmp dword [ecx + 0x5c], 0
je 0x5f3e1e
add edx, 2
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
test eax, eax
lea eax, [eax + 4]
cmove eax, dword [esp + 0x2c]
sub esp, 4
mov edi, edx
movzx edx, si
push 1
push eax
push edi
jmp 0x5f84b6
movzx eax, word [edx + 0x22]
add eax, 0xffffff9e
movzx eax, ax
cmp eax, 0xb
ja 0x5f3cfc
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.0060d520
jmp 0x5f8960
movzx eax, word [edx + 4]
add eax, 0xffffff9e
movzx eax, ax
cmp eax, 0xb
ja 0x5f3d24
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.00610d70
jmp 0x5f8960
movzx eax, word [edx + 6]
add eax, 0xffffff9e
movzx eax, ax
cmp eax, 0xb
ja 0x5f3d45
sub esp, 0xc
mov ecx, dword [esp + 0x10]
push dword [esp + 0xc0]
call fcn.00610d70
jmp 0x5f8960
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8a44
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x24
cmp dword [esi], 0
jne case.0x5f8474.97
add eax, 8
mov dword [eax + 0x20], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov esi, dword [esp + 0x10]
mov ecx, dword [esi]
mov dword [eax], ecx
mov edx, edi
mov dword [eax + 0x10], edx
mov dword [esi], eax
sub esp, 8
mov ecx, dword [esp + 0xc]
push 0
push eax
call fcn.00614e40
nop word [eax + eax]
add esp, 0x10
mov edi, eax
test edi, edi
je case.0x5f8474.97
cmp edi, dword [esp + 0xb0]
mov edx, edi
jb 0x5f8460
cmp dword [esp + 0x20], 0
je case.0x5f8474.97
mov eax, dword [esp + 0x18]
cmp dword [eax], 0
jne case.0x5f8474.97
mov esi, dword [esp + 0x18]
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 0x24]
cmp edx, 0x7f8
ja 0x5f8a13
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
mov dword [eax + 0x20], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov ecx, dword [esp + 0xb4]
mov edx, ecx
mov ecx, dword [edx + 8]
mov dword [eax], ecx
mov dword [edx + 8], eax
mov dword [eax + 0x10], 0x6f5c4c
mov edx, dword [esp + 4]
mov ecx, dword [edx + 0x18]
mov dword [eax + 0x14], ecx
mov eax, dword [esp + 0x64]
mov dword [edx + 0x18], eax
jmp case.0x5f8474.97
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8a44
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x24
cmp dword [esi], 0
jne case.0x5f8474.97
add eax, 8
jmp 0x5f89b0
mov dword [esi], 2
add esp, 0x9c
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp], 2
mov edx, dword [esp]
jmp 0x5f3769
mov dword [ebp], 2
jmp case.0x5f8474.97
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8b10
mov ecx, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x30], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x4000
mov edx, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov dword [esp + 0x20], eax
mov dword [esi + 0x1c], eax
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f8ae2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f8b09
mov dword [edi], 2
jmp case.0x5f8474.97
sub esp, 0xc
push 0x1000
call dword [0x6f4468]
add esp, 0x10
test eax, eax
je 0x5f8b10
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5f8b1e
mov dword [esi], 2
mov dword [esp + 0x20], 0
mov esi, dword [ebx]
cmp dword [esi], 0
jne 0x5f8b91
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5f8b3f
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f8b6d
sub esp, 0xc
push 0x800
call dword [0x6f4468]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5f8cde
mov eax, dword [esi + 0x30]
mov dword [ebp], eax
mov dword [esi + 0x30], ebp
mov dword [ebp + 4], 0xc
add ebp, 8
mov eax, dword [esp + 0x20]
mov dword [ebp], eax
mov ecx, esi
call fcn.005f3650
mov dword [ebp + 4], eax
mov eax, dword [ebx + 0xc0]
mov dword [ebp + 8], eax
mov dword [ebx + 0xc0], ebp
mov ebp, dword [esp + 0x18]
cmp dword [esp + 0x2c], 0
mov esi, dword [ebx + 0x40]
jle 0x5f8bfd
mov eax, dword [esp + 0x10]
shl eax, 2
cmp dword [ebp], 0
jne 0x5f8c1d
add esi, dword [ebp + 0x58]
mov edx, 1
mov ecx, ebp
mov dword [esp + 0x10], eax
push eax
push 0x82
push 0
push 0xe
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f8ca4
mov byte [eax], 0x8d
mov edx, 1
mov ecx, ebp
push esi
push 0x8d
push 0
push 0xe
call fcn.005fdd80
add esp, 0x10
test eax, eax
je 0x5f8ca4
mov byte [eax], 0x89
mov eax, dword [esp + 0x10]
jmp 0x5f8c1d
mov edx, 0x20
mov ecx, ebp
push 0
push 2
push esi
push 0x8d
call fcn.005f2690
add esp, 0x10
mov eax, dword [esp + 0x10]
shl eax, 2
mov esi, eax
lea eax, [esi + 8]
mov edx, 0x20
mov ecx, ebp
push dword [edi + 0x18]
push 0x40
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
lea eax, [esi + 4]
mov edx, 0x20
mov ecx, ebp
push 1
push 0x40
push eax
push 0x82
call fcn.005f2690
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push esi
push 0x82
call fcn.005f2690
add esp, 0x10
mov eax, dword [edi + 0x20]
test eax, eax
mov edx, dword [esp]
js 0x5f3769
dec eax
sub esp, 4
mov ecx, ebx
mov edx, dword [esp + 4]
push 0
push eax
push dword [esp + 0xbc]
call fcn.0061aa60
mov edx, dword [esp + 0x10]
add esp, 0x10
jmp 0x5f3769
cmp dword [ebp], 4
jne 0x5f8cd5
sub esp, 8
mov edx, 0x5030100
mov ecx, ebp
push dword [esp + 0x18]
push 0x40
push 0
push 2
push esi
push 0x8d
call fcn.005fe840
mov eax, dword [esp + 0x30]
add esp, 0x20
jmp 0x5f8c1d
mov eax, dword [esp + 0x10]
jmp 0x5f8c1d
mov dword [esi], 2
jmp 0x5f8b8d
mov eax, dword [esp + 0x18]
mov dword [eax], 2
jmp case.0x5f8474.97