Function at 0x5e5e1a
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x24c
mov ecx, dword [esp + 0x264]
mov ebp, dword [esp + 0x260]
mov eax, dword [ebp + 0x30]
mov ebx, dword [ecx + 4]
test eax, eax
mov edi, 0x7084f0
cmovne edi, eax
mov dword [esp + 0x184], 0
mov dword [esp + 0x180], 0
mov dword [esp + 0x17c], 0
mov dword [esp + 0x178], 0
sub esp, 4
lea eax, [esp + 0x50]
push 0x11c
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0x10
movzx eax, word [ebp + 0x22]
lea ecx, [ebp + eax*2]
movzx esi, word [ebp + 0x26]
movzx edx, word [ebp + 0x24]
mov eax, edx
mov dword [esp + 0x18], esi
imul eax, esi
mov dword [esp + 0x10], ecx
lea esi, [ecx + eax*2]
mov dword [esp + 0x188], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x58], 0
lea eax, [edi + 0x100]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edi
mov eax, dword [esp + 0x268]
mov dword [esp + 0xa8], eax
xor eax, eax
mov dword [esp + 0x3c], ebx
cmp dword [ebx + 0x28], 0
sete al
mov dword [esp + 0xac], eax
mov dword [esp + 0xc8], 0
mov eax, dword [ebp + 8]
mov ebx, eax
shr ebx, 0x14
mov ecx, ebx
and cl, 7
cmp cl, 5
ja case.default.0x5e4cd8
and ebx, 7
jmp dword [ebx*4 + 0x5f1e44]
mov dword [esp + 0xd4], 0xa
xor ebx, ebx
jmp 0x5e4d4c
mov dword [esp + 0xd4], 0xd
xor ebx, ebx
mov dword [esp + 0x24], 0xd
jmp 0x5e4d54
mov dword [esp + 0xd4], 0xd0a
xor ebx, ebx
jmp 0x5e4d4c
mov dword [esp + 0xd4], 0xd0a
mov dword [esp + 0xc8], 1
mov ebx, 1
jmp 0x5e4d4c
mov dword [esp + 0xd4], 0xd0a
mov dword [esp + 0xc8], 2
mov ebx, 2
mov dword [esp + 0x24], 0xa
mov dword [esp + 0xcc], 0x7fffffff
mov dword [esp + 0xd0], 0
mov ebp, eax
shr ebp, 0x17
and ebp, 1
lea ecx, [ebp + 1]
mov dword [esp + 0xd8], ecx
mov dword [esp + 0xdc], 0x7fffffff
mov dword [esp + 0xe0], 0
mov ecx, eax
shr ecx, 5
and ecx, 1
mov dword [esp + 0xe4], ecx
add edi, 0x340
mov dword [esp + 0xe8], edi
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xec], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf4], edx
mov ecx, eax
shr ecx, 0x19
and ecx, 1
mov dword [esp + 0x158], ecx
mov ecx, eax
shr ecx, 0xb
and ecx, 1
mov dword [esp + 0x15c], ecx
shr eax, 0x1d
and eax, 1
mov dword [esp + 0x160], eax
test ecx, ecx
je 0x5e4e55
mov eax, ebx
and al, 3
cmp al, 1
je 0x5e4e13
cmp al, 2
mov ecx, dword [esp + 0x24]
mov eax, ecx
jne 0x5e4e1c
mov eax, 0xd
jmp 0x5e4e1c
mov eax, 0x2029
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xcc], eax
test ebx, ebx
mov eax, 0xa
cmove eax, ecx
mov dword [esp + 0xd0], eax
test ebp, ebp
mov eax, 0x2029
mov ecx, 0xd
cmove ecx, eax
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], 0xa
mov ebp, esi
nop word [eax + eax]
mov eax, ebp
movzx ecx, word [eax + 2]
movzx edx, word [eax + ecx*2]
lea ebp, [eax + ecx*2]
cmp edx, 0x77
je 0x5e4e60
mov dword [esp + 0x6c], 0x14
mov edi, dword [esp + 0x260]
movzx eax, word [edi + 0x1e]
inc eax
sub esp, 0xc
push eax
call dword [0x6f4478]
add esp, 0x10
mov dword [esp + 0x5c], eax
test eax, eax
je case.default.0x5e4cd8
add ebp, 4
movzx ecx, word [edi + 0x1e]
inc ecx
sub esp, 4
push ecx
push 1
push eax
call sub.msvcrt.dll_memset
add esp, 0x10
cmp esi, ebp
mov dword [esp + 0x24], ebp
jae 0x5e5123
lea ebx, [esi - 2]
lea edi, [esp + 0x4c]
nop dword [eax]
movzx eax, word [esi]
add eax, 0xfffffffd
movzx eax, ax
cmp eax, 0x98
ja case.0x5e4ee4.1
jmp dword [eax*4 + 0x5f1e5c]
mov eax, dword [esp + 0x5c]
movzx ecx, word [esi + 2]
mov byte [eax + ecx], 0
add esi, 4
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
movzx eax, word [esi + 4]
test eax, eax
je 0x5e4f4b
movzx ecx, word [esi + 2]
imul ecx, dword [esp + 0xf4]
add ecx, ecx
add ecx, dword [esp + 0xec]
inc eax
nop word cs:[eax + eax]
mov edx, dword [esp + 0x5c]
movzx ebp, word [ecx]
mov byte [edx + ebp], 0
mov edx, dword [esp + 0xf4]
lea ecx, [ecx + edx*2]
dec eax
cmp eax, 1
jg 0x5e4f30
add esi, 6
mov ebp, dword [esp + 0x24]
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
mov eax, dword [esp + 0x5c]
movzx ecx, word [esi + 4]
mov byte [eax + ecx], 0
add esi, 6
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
movzx eax, word [esi + 4]
cmp eax, 0x76
je 0x5e5c24
add esi, 4
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
mov dword [esp + 0xb0], 1
mov dword [esp + 0xac], 1
add esi, 2
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
mov ecx, edi
mov edx, esi
call fcn.005fd430
mov esi, eax
test esi, esi
je 0x5e5c24
nop word cs:[eax + eax]
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
cmp dword [esp + 0x78], 0
jne 0x5e5003
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x78], eax
add eax, 4
mov dword [esp + 0x6c], eax
add esi, 4
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
cmp dword [esp + 0x90], 0
jne 0x5e502f
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x90], eax
add eax, 4
mov dword [esp + 0x6c], eax
add esi, 8
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
mov eax, esi
nop word cs:[eax + eax]
movzx ecx, word [eax + 2]
movzx edx, word [eax + ecx*2]
lea eax, [eax + ecx*2]
cmp edx, 0x77
je 0x5e5050
add eax, 4
cmp eax, ebx
cmova ebx, eax
add esi, 4
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
cmp esi, ebx
jae 0x5e5087
mov dword [esp + 0xbc], 1
add esi, 2
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
mov dword [esp + 0x8c], 1
mov dword [esp + 0xb4], 1
cmp esi, ebx
jae 0x5e5113
mov dword [esp + 0xbc], 1
jmp 0x5e5113
mov dword [esp + 0xb8], 1
mov dword [esp + 0x8c], 1
add esi, 2
cmp esi, ebp
jb 0x5e4ed0
jmp 0x5e5123
mov dword [esp + 0xb8], 1
mov dword [esp + 0x8c], 1
cmp dword [esp + 0x88], 0
jne 0x5e5113
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x88], eax
add eax, 4
mov dword [esp + 0x6c], eax
movzx eax, word [esi + 2]
lea esi, [esi + eax*2 + 6]
cmp esi, ebp
jb 0x5e4ed0
mov edx, dword [esp + 0x268]
test edx, edx
je 0x5e58c8
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x7c], eax
lea ecx, [eax + 4]
mov dword [esp + 0x6c], ecx
mov bl, 1
cmp edx, 1
mov esi, dword [esp + 0x260]
jne 0x5e516a
mov dword [esp + 0x80], ecx
add eax, 0xc
mov dword [esp + 0x6c], eax
mov bl, 1
test byte [esi + 0xa], 4
je 0x5e5174
jmp 0x5e58f6
test byte [esi + 0xa], 4
jne 0x5e58f6
cmp dword [esp + 0x8c], 0
je 0x5e5190
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x8c], eax
add eax, 4
mov dword [esp + 0x6c], eax
mov dword [esp + 0x40], ebx
cmp dword [esp + 0xb0], 0
je 0x5e51ad
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x70], eax
add eax, 4
mov dword [esp + 0x6c], eax
mov ebx, dword [esp + 0x6c]
test bl, 4
jne 0x5e589f
cmp dword [esp + 0x70], 0
je 0x5e58b1
cmp dword [esp + 0x90], 0
je 0x5e51e6
movzx eax, word [esi + 0x1e]
inc eax
sub esp, 4
push eax
push 0
push dword [esp + 0x68]
call sub.msvcrt.dll_memset
add esp, 0x10
movzx eax, word [esi + 0x1e]
lea esi, [ebx + eax*8 + 8]
mov dword [esp + 0x68], esi
mov ebp, dword [esp + 0x50]
mov ebx, dword [esp + 0x24]
mov edi, ebx
sub edi, ebp
mov ecx, edi
sar ecx, 1
cmp dword [esp + 0xb8], 1
mov eax, 5
sbb eax, 0
mov dword [esp + 0x168], ecx
imul eax, ecx
sub esp, 0xc
push eax
call dword [0x6f4478]
add esp, 0x10
mov dword [esp + 0x54], eax
test eax, eax
je 0x5e591b
add edi, edi
sub esp, 4
push edi
push 0
mov dword [esp + 0x20], eax
push eax
call sub.msvcrt.dll_memset
add esp, 0x10
mov eax, dword [esp + 0x260]
movzx eax, word [eax + 0x1e]
lea ecx, [esi + eax*4 + 4]
mov dword [esp + 0x16c], ecx
cmp ebx, ebp
mov dword [esp + 0xc], ebp
jbe 0x5e585f
cmp ecx, 0x10000
jg 0x5e585f
mov eax, 1
xor esi, esi
mov ebp, dword [esp + 0xc]
nop word cs:[eax + eax]
mov dword [esp + 0x18], ecx
test eax, eax
mov dx, word [ebp]
mov dword [esp + 0x10], ebp
je 0x5e55d0
lea eax, [edx - 0x81]
movzx ecx, ax
cmp ecx, 6
ja 0x5e55d0
mov ecx, 0x57
bt ecx, eax
jae 0x5e55d0
mov ebx, ebp
nop word cs:[eax + eax]
movzx ecx, word [ebx + 2]
movzx eax, word [ebx + ecx*2]
lea ebx, [ebx + ecx*2]
cmp eax, 0x77
je 0x5e52d0
movzx eax, ax
cmp eax, 0x78
jne 0x5e55d0
add ebx, 4
mov ecx, ebx
sub ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
cmp dword [eax + ecx*2 - 4], 0
je 0x5e5328
mov eax, dword [esp + 0x10]
cmp eax, esi
jb 0x5e55d0
mov esi, eax
nop
movzx eax, word [esi + 2]
movzx ecx, word [esi + eax*2]
lea esi, [esi + eax*2]
cmp ecx, 0x77
je 0x5e5310
add esi, 4
jmp 0x5e55d0
mov dword [esp + 0x44], ecx
mov eax, ebx
sub eax, dword [esp + 0x10]
mov dword [esp + 0x34], eax
sar eax, 1
mov dword [esp + 0x20], eax
mov cx, word [ebx]
mov eax, 1
cmp cx, dx
mov ebp, ebx
mov dword [esp + 0x2c], edx
jne 0x5e53e2
mov eax, 1
mov edi, ebx
mov ebp, edi
nop dword [eax]
mov dword [esp + 0x1c], eax
nop word cs:[eax + eax]
movzx eax, word [ebp + 2]
movzx ecx, word [ebp + eax*2]
lea ebp, [ebp + eax*2]
cmp ecx, 0x77
je 0x5e5370
add ebp, 4
mov eax, ebp
sub eax, edi
sar eax, 1
cmp eax, dword [esp + 0x20]
jne 0x5e53c8
sub esp, 4
push dword [esp + 0x38]
push edi
push dword [esp + 0x1c]
call sub.msvcrt.dll_memcmp
add esp, 0x10
test eax, eax
jne 0x5e53cc
mov eax, dword [esp + 0x1c]
inc eax
mov cx, word [ebp]
mov edx, dword [esp + 0x2c]
cmp cx, dx
mov edi, ebp
je 0x5e5360
cmp eax, 2
je 0x5e55d0
jmp 0x5e53e2
mov ebp, edi
jmp 0x5e53d2
mov ebp, edi
mov edx, dword [esp + 0x2c]
mov cx, dx
mov eax, dword [esp + 0x1c]
cmp eax, 2
je 0x5e55d0
mov dword [esp + 0x1c], eax
mov eax, ecx
and eax, 0xfffe
cmp eax, 0x92
jne 0x5e559d
mov eax, dword [esp + 0x20]
lea eax, [eax + 3]
mov dword [esp + 0x28], eax
mov dword [esp + 0x48], 0
mov edi, ebp
mov dword [esp + 0x38], ecx
nop word cs:[eax + eax]
movzx eax, word [edi + 2]
cmp eax, 0x83
jne 0x5e549b
cmp word [edi + 6], dx
jne 0x5e558e
mov dword [esp + 0x30], edi
lea eax, [edi + 6]
mov edi, eax
nop
movzx ecx, word [edi + 2]
movzx edx, word [edi + ecx*2]
lea edi, [edi + ecx*2]
cmp edx, 0x77
je 0x5e5440
add edi, 4
mov ecx, edi
sub ecx, dword [esp + 0x30]
sar ecx, 1
cmp ecx, dword [esp + 0x28]
jne 0x5e548f
sub esp, 4
push dword [esp + 0x38]
push eax
push dword [esp + 0x1c]
call sub.msvcrt.dll_memcmp
add esp, 0x10
test eax, eax
jne 0x5e548f
inc dword [esp + 0x48]
mov ecx, dword [esp + 0x38]
cmp word [edi], cx
mov edx, dword [esp + 0x2c]
je 0x5e5420
jmp 0x5e559d
mov ax, 0x83
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
cmp dword [esp + 0x48], 0
jle 0x5e559d
cmp ax, dx
jne 0x5e559d
mov eax, edi
lea edi, [edi + 2]
mov dword [esp + 0x30], edi
nop dword [eax + eax]
movzx ecx, word [edi + 2]
movzx edx, word [edi + ecx*2]
lea edi, [edi + ecx*2]
cmp edx, 0x77
je 0x5e54c0
add edi, 4
mov ecx, edi
sub ecx, eax
sar ecx, 1
mov edx, dword [esp + 0x20]
inc edx
cmp ecx, edx
jne 0x5e5584
sub esp, 4
push dword [esp + 0x38]
push dword [esp + 0x38]
push dword [esp + 0x1c]
call sub.msvcrt.dll_memcmp
add esp, 0x10
test eax, eax
jne 0x5e5584
xor eax, eax
mov edx, dword [esp + 0x48]
nop dword [eax + eax]
movzx ecx, word [edi]
cmp ecx, 0x78
jne 0x5e5520
inc eax
add edi, 4
cmp eax, edx
jl 0x5e5510
cmp eax, edx
jne 0x5e5584
sub edi, ebp
sar edi, 1
mov eax, ebp
sub eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
mov dword [ecx + eax*2 - 4], edi
movzx ecx, word [esp + 0x38]
mov edi, edx
xor edx, edx
cmp ecx, 0x92
sete dl
mov ecx, 0x28
sub ecx, edx
mov edx, dword [esp + 0x14]
mov dword [edx + eax*2], ecx
add edi, 2
mov dword [edx + eax*2 + 4], edi
mov eax, dword [esp + 0x1c]
cmp eax, 1
mov edx, dword [esp + 0x2c]
je 0x5e5300
dec eax
mov dword [esp + 0x1c], eax
movzx eax, word [ebp - 2]
mov ecx, 0xfffffffe
sub ecx, eax
lea ebp, [ebp + ecx*2]
jmp 0x5e559d
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
jmp 0x5e55a1
mov ax, 0x83
cmp dword [esp + 0x48], 0
jg 0x5e54a6
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
cmp edi, 3
jl 0x5e55d0
mov ecx, dword [esp + 0x44]
sar ecx, 1
sub ebp, ebx
sar ebp, 1
mov dword [eax + ecx*4 - 4], ebp
mov dword [eax + ecx*4], 0x29
mov dword [eax + ecx*4 + 4], edi
jmp 0x5e5300
add edx, 0xffffffdf
movzx ebp, dx
cmp ebp, 0x73
ja case.0x5e55f5.8
mov ecx, 0xfffffffe
mov edi, 4
mov ebx, 1
xor eax, eax
mov edx, 2
jmp dword [ebp*4 + 0x5f20c0]
mov eax, dword [esp + 0x10]
sub eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [edx + eax*2], ecx
add ecx, 4
mov dword [esp + 0x18], ecx
mov edx, 2
jmp case.0x5e55f5.98
mov ecx, 0xfffffffe
jmp 0x5e562c
mov ecx, 0xfffffffd
mov edi, 8
mov ebp, dword [esp + 0x10]
cmp ebp, esi
jb 0x5e5650
mov eax, ebp
sub eax, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
mov dword [ebx + eax*2], edx
add edx, edi
mov dword [esp + 0x18], edx
mov eax, 1
test ecx, ecx
js 0x5e5670
mov ebx, ecx
mov ebp, dword [esp + 0x10]
lea ebp, [ebp + ebx*2]
mov edi, dword [esp + 0x24]
jmp 0x5e574a
add ecx, ecx
sub ebp, ecx
cmp dword [esp + 0x15c], 0
je 0x5e5692
movzx eax, word [ebp - 2]
and eax, 0xfc00
lea ecx, [ebp + 2]
cmp eax, 0xd800
cmove ebp, ecx
mov eax, 1
mov edi, dword [esp + 0x24]
jmp 0x5e574a
mov ecx, 1
mov edi, 4
jmp case.0x5e55f5.1
mov eax, dword [esp + 0x10]
movzx eax, word [eax + 2]
mov ecx, 1
cmp eax, 0x11
je 0x5e56cf
mov edi, 8
movzx eax, ax
cmp eax, 0x16
jne case.0x5e55f5.1
mov eax, 1
mov ebx, 1
jmp case.0x5e55f5.113
mov ebx, 0x11
mov eax, 1
jmp case.0x5e55f5.113
mov eax, dword [esp + 0x10]
sub eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [edx + eax*2], ecx
add ecx, 4
mov dword [esp + 0x18], ecx
mov edx, 3
mov ebp, dword [esp + 0x10]
cmp ebp, esi
mov edi, dword [esp + 0x24]
jb 0x5e5741
mov esi, ebp
nop word [eax + eax]
movzx ecx, word [esi + 2]
movzx eax, word [esi + ecx*2]
lea esi, [esi + ecx*2]
cmp eax, 0x77
je 0x5e5720
add esi, 4
movzx eax, ax
cmp eax, 0x78
mov eax, 0
cmove esi, eax
lea ebp, [ebp + edx*2]
mov eax, 1
mov ecx, dword [esp + 0x18]
cmp ecx, 0x10000
jg 0x5e585f
cmp ebp, edi
jb 0x5e5290
jmp 0x5e585f
lea ecx, [esp + 0x4c]
mov edx, dword [esp + 0x10]
call fcn.005fd430
mov ebp, eax
jmp 0x5e5692
mov eax, dword [esp + 0x10]
movzx edx, word [eax + 4]
mov eax, 1
mov ecx, 2
cmp edx, 0x11
je 0x5e57a3
mov edi, 8
movzx edx, dx
cmp edx, 0x16
jne case.0x5e55f5.1
mov ebx, 2
jmp case.0x5e55f5.113
mov ecx, 2
jmp 0x5e562c
mov eax, dword [esp + 0x10]
movzx ebx, word [eax + 2]
test ebx, ebx
mov eax, 1
jne case.0x5e55f5.113
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x10]
cmp ecx, 0x10000
jle 0x5e575a
jmp 0x5e585f
mov ebp, dword [esp + 0x10]
lea eax, [ebp + 2]
mov edx, dword [esp + 0xc]
sub eax, edx
mov edi, dword [esp + 0x14]
cmp dword [edi + eax*2], 0
je 0x5e5843
sar eax, 1
mov ecx, ebp
sub ecx, edx
mov edx, dword [esp + 0x18]
mov dword [edi + ecx*2], edx
mov ecx, edx
add ecx, 4
mov eax, dword [edi + eax*4]
lea ebp, [ebp + eax*2]
mov edi, dword [esp + 0x24]
jmp 0x5e584b
mov ecx, dword [esp + 0x10]
movzx eax, word [ecx + 2]
movzx eax, word [ecx + eax*2]
add eax, 0xffffff87
movzx eax, ax
mov edx, 2
cmp eax, 1
ja case.0x5e55f5.98
mov eax, ecx
jmp 0x5e5600
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
add ebp, 4
mov eax, 1
cmp ecx, 0x10000
jle 0x5e575a
mov dword [esp + 0x16c], ecx
mov esi, dword [esp + 0x260]
test dword [esi + 8], 0x4000010
je 0x5e5927
cmp ecx, 0x10001
jl 0x5e59e4
sub esp, 0xc
push dword [esp + 0x60]
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x68]
jmp 0x5e5c2b
add ebx, 4
mov dword [esp + 0x6c], ebx
cmp dword [esp + 0x70], 0
jne 0x5e51c5
mov dword [esp + 0x70], ebx
cmp dword [esp + 0x90], 0
jne 0x5e51cf
jmp 0x5e51e6
mov esi, dword [esp + 0x260]
test byte [esi + 0xc], 0x40
je 0x5e58ea
test byte [esi + 0xb], 4
jne 0x5e58ea
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x74], eax
add eax, 4
mov dword [esp + 0x6c], eax
xor ebx, ebx
test byte [esi + 0xa], 4
je 0x5e5174
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x84], eax
add eax, 4
mov dword [esp + 0x6c], eax
cmp dword [esp + 0x8c], 0
jne 0x5e517e
jmp 0x5e5190
sub esp, 0xc
push dword [esp + 0x68]
jmp 0x5e5c2b
mov dword [esp + 0x18], ecx
mov esi, dword [esp + 0x54]
mov eax, dword [esp + 0x5c]
mov ecx, 0x1f80003e
mov edi, dword [esp + 0xc]
jmp 0x5e5943
add edi, 2
movzx edx, word [edi]
cmp edx, 0x1c
ja 0x5e5950
bt ecx, edx
jb 0x5e5940
movzx edx, dx
cmp edx, 0x83
je 0x5e5963
cmp edx, 0x85
jne 0x5e59a3
movzx ebx, word [edi + 2]
movzx ebp, word [edi + ebx*2]
cmp ebp, 0x78
jne 0x5e5b8b
lea ebx, [edi + ebx*2]
sub ebx, dword [esp + 0xc]
cmp dword [esi + ebx*2], 0
jne 0x5e5b8b
cmp edx, 0x85
jne 0x5e599e
movzx edx, word [edi + 4]
cmp byte [eax + edx], 0
je 0x5e5b8b
add edi, 2
add edi, 4
jmp 0x5e5943
mov ecx, edi
call fcn.005fd740
test eax, eax
je 0x5e5b8b
mov dword [esp + 0x94], edi
add edi, 2
sub edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [esi + edi*2], ecx
add ecx, 4
mov dword [esp + 0x16c], ecx
mov esi, dword [esp + 0x260]
cmp ecx, 0x10001
jge 0x5e5886
mov ebx, ecx
cmp dword [esp + 0xb8], 0
je 0x5e5a2a
mov ecx, dword [esp + 0x168]
lea eax, [ecx*4]
add eax, dword [esp + 0x54]
mov dword [esp + 0x60], eax
sub esp, 4
push ecx
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0x10
mov edx, dword [esp + 0x50]
sub esp, 0xc
lea ecx, [esp + 0x58]
push 0
call fcn.005f2570
add esp, 0x10
sub esp, 0xc
push 0x64
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e5c0e
xor eax, eax
mov ecx, 0x19
mov edi, ebp
rep stosd dword es:[edi], eax
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
mov dword [ebp + 0x2c], eax
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
lea ecx, [ebp + 0x30]
mov dword [esp + 0x20], ecx
mov dword [ebp + 0x30], eax
mov ecx, dword [ebp + 0x2c]
test eax, eax
je 0x5e5bd9
test ecx, ecx
je 0x5e5bd9
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [ebp + 0x54], 0xffffffff
mov dword [ebp + 0x44], 0xffffffff
mov dword [ebp + 0x40], 0xffffffff
mov dword [ebp + 0x3c], 0xffffffff
mov dword [ebp + 0x38], 0xffffffff
mov dword [ebp + 0x34], 0xffffffff
mov al, byte [0x7333b8]
test al, al
jne 0x5e5b14
mov eax, 0x7333cb
and eax, 0xfffffff0
mov dword [eax], 0x80000000
mov dword [eax + 0x10], 0x7fffffff
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 0x80000000
mov dword [eax + 0x30], 0xffffffff
mov dword [eax + 0x34], 0x7fffffff
mov byte [0x7333b8], 1
lea eax, [ebp + 0x2c]
mov dword [esp + 0x28], eax
mov dword [esp + 0x4c], ebp
cmp dword [ebp], 0
je 0x5e5c3f
movzx edi, word [esi + 0x1e]
lea ebx, [edi + edi + 2]
mov esi, dword [esp + 0x4c]
cmp dword [esi], 0
jne 0x5e5da2
mov edx, 1
mov ecx, esi
push 8
push 0x8c
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e5d99
mov byte [eax], 0x8b
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e5da2
or byte [eax + 1], 0x28
jmp 0x5e5da2
cmp dword [esp + 0xbc], 0
mov esi, dword [esp + 0x260]
mov ecx, dword [esp + 0x18]
jne 0x5e587a
sub esp, 8
lea eax, [esp + 0x174]
lea ecx, [esp + 0x54]
mov edx, dword [esp + 0x14]
push 4
push eax
call fcn.005f2440
add esp, 0x10
mov ecx, dword [esp + 0x16c]
cmp ecx, 0x10001
jl 0x5e59e4
jmp 0x5e5886
test ecx, ecx
je 0x5e5bf0
sub esp, 0xc
push ecx
call dword [0x6f447c]
add esp, 0x10
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
test eax, eax
je 0x5e5c01
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
sub esp, 0xc
push ebp
call dword [0x6f447c]
add esp, 0x10
sub esp, 0xc
push dword [esp + 0x68]
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x60]
jmp 0x5e5c2b
sub esp, 0xc
push dword [esp + 0x68]
call dword [0x6f447c]
add esp, 0x10
add esp, 0x24c
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp + 4], 0
mov dword [ebp + 0x34], 5
mov dword [ebp + 0x38], 5
mov dword [ebp + 0x3c], 0
mov dword [ebp + 0x40], 0
mov dword [ebp + 0x54], 1
mov dword [ebp + 0x60], 8
mov dword [ebp + 0x5c], 0x10
mov dword [ebp + 0x58], 0x18
mov eax, dword [ecx + 4]
lea edx, [eax + 7]
cmp edx, 0xff8
ja 0x5e5c95
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e5cc2
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e62a1
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 7
add eax, 8
mov byte [eax], 6
add dword [ebp + 0x48], 6
mov dword [eax + 1], 0x53565755
mov word [eax + 5], 0xd98b
add ebx, 3
and ebx, 0xfffffffc
add ebx, dword [ebp + 0x58]
mov dword [ebp + 0x44], ebx
mov edi, ebx
test ebx, ebx
jle 0x5e627a
mov eax, edi
cmp eax, 0x4000
jg 0x5e6018
cmp eax, 0x1001
jl 0x5e6256
mov edx, 1
mov ecx, ebp
push 0xfffff000
push 0x8d
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6211
mov byte [eax], 0x8b
cmp edi, 0x2001
jl 0x5e6256
mov edx, 1
mov ecx, ebp
push 0xffffe000
push 0x8d
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6a69
mov byte [eax], 0x8b
cmp edi, 0x3001
jl 0x5e6256
mov edx, 1
mov ecx, ebp
push 0xffffd000
push 0x8d
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e78a5
mov byte [eax], 0x8b
jmp 0x5e6256
cmp dword [esi], 0
je 0x5e5b63
add edi, edi
cmp ebx, 7
ja 0x5e5de4
mov ebx, dword [esp + 0x6c]
add ebx, 4
inc edi
nop word cs:[eax + eax]
mov edx, 0x20
mov ecx, esi
push 0
push 1
push ebx
push 0x8d
call fcn.005f26a0
add esp, 0x10
add ebx, 4
dec edi
jne 0x5e5dc0
jmp 0x5e5e72
cmp dword [esi], 0
je 0x5e5fdf
or edi, 1
mov edx, 0x20
mov ecx, esi
push edi
push 0x40
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
mov edi, eax
mov edx, 0x20
mov ecx, esi
push 0
push 1
push 0
push 0x82
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5e5e72
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 4
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [esi], 0
jne 0x5e5e72
mov edx, 0x11
mov ecx, esi
push 0
push 3
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e5e69
or byte [eax + 1], 0x28
cmp dword [esi], 0
je 0x5e6162
mov eax, dword [esp + 0x74]
test eax, eax
je 0x5e5e93
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push 0
push 8
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 4
push 0x81
push 0
push 0xc
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0xc
push 0x81
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov edx, 0x25
mov ecx, ebp
push 0x1c
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 4
push 0x83
push 0
push 2
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 8
push 0x83
push 0
push 0xa
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
jne 0x5e5f7a
mov edx, 0x11
mov ecx, ebp
push 0
push 1
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push 0x10
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x98]
cmp eax, dword [esp + 0x9c]
jge 0x5e6310
mov esi, dword [esp + 0x4c]
cmp dword [esi], 0
jne 0x5e62d1
mov edx, 1
mov ecx, esi
push 0xfffffffffffffffe
push 0x8c
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e605a
mov byte [eax], 0x8d
jmp 0x5e62d1
mov eax, dword [esp + 0x6c]
add eax, dword [esi + 0x58]
mov edx, 1
mov ecx, esi
add eax, 4
je 0x5e60ad
push eax
push 0x8d
push 0
push 2
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e5ded
mov byte [eax], 0x8d
jmp 0x5e5ded
mov edx, 1
mov ecx, ebp
push 0
push 1
push 0
push 0xd
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6153
mov byte [eax], 0x89
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e60cd
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e60fa
cmp dword [esi], 4
jne 0x5e62d1
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e62c8
mov byte [eax], 0x89
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e62d1
or byte [eax + 1], 0x28
jmp 0x5e62d1
push 0
push 2
push 0
push 0xd
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e5ded
mov byte [eax], 0x89
jmp 0x5e5ded
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e62a1
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 6
add eax, 8
lea ecx, [edi - 1]
sar ecx, 0xc
mov byte [eax], 5
add dword [ebp + 0x48], 5
mov byte [eax + 1], 0xba
mov dword [eax + 2], ecx
mov edx, 1
mov ecx, ebp
push 0xfffff000
push 0x81
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6202
mov byte [eax], 0x8b
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e6183
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e61b0
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e603a
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e65bf
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e65ec
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e62a1
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [ebp + 0x48], 5
mov byte [eax + 1], 0x2d
mov dword [eax + 2], 0x1000
mov edx, 0x11
mov ecx, ebp
push 0
push 2
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e62b9
or byte [eax + 1], 0x28
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 3]
cmp edx, 0xff8
ja 0x5e6220
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6249
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e6136
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e5d2c
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e62a1
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 3
add eax, 8
mov byte [eax], 2
add dword [ebp + 0x48], 2
mov word [eax + 1], 0xf075
mov eax, edi
neg eax
mov edx, 1
mov ecx, ebp
push eax
push 0x8d
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e62ad
mov byte [eax], 0x8b
mov edx, 0x11
mov ecx, ebp
push 0
push 0xd
push edi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e5b29
or byte [eax + 1], 0x28
jmp 0x5e5b29
mov dword [ebp], 2
jmp 0x5e5b29
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e627a
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e61e5
cmp dword [esi], 0
je 0x5e6085
mov edi, dword [esp + 0x98]
mov ebx, dword [esp + 0x9c]
cmp edi, ebx
jge 0x5e6310
nop word cs:[eax + eax]
mov edx, 0x20
mov ecx, esi
push 0
push 1
push edi
push 0x8d
call fcn.005f26a0
add esp, 0x10
add edi, 4
cmp edi, ebx
jl 0x5e62f0
mov esi, dword [esp + 0x268]
cmp esi, 1
jne 0x5e633b
mov edx, 0x20
mov ecx, ebp
push 0xffffffffffffffff
push 0x40
push dword [esp + 0x88]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x88]
test eax, eax
je 0x5e635f
mov edx, 0x20
mov ecx, ebp
push 0
push 0x40
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x5e6383
mov edx, 0x20
mov ecx, ebp
push 0
push 0x40
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x260]
test byte [eax + 8], 0x10
mov dword [esp + 0x14], ebp
jne 0x5e63f0
mov ecx, dword [eax + 0xc]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x18c], 0
mov eax, dword [esp + 0x84]
test ch, 8
jne 0x5e6408
test eax, eax
jne 0x5e6410
mov eax, dword [esp + 0xc8]
dec eax
cmp eax, 2
jb 0x5e63de
xor ebp, ebp
cmp dword [esp + 0xd4], 0x100
mov dword [esp + 0x10], 0
jl 0x5e6759
mov dword [esp + 0x10], 0
mov ebp, 1
jmp 0x5e6759
mov ecx, ebp
call fcn.005f3660
mov dword [esp + 0x44], eax
mov dword [esp + 0x34], 0
jmp 0x5ea0f9
test eax, eax
je 0x5e6514
mov edx, 0x20
mov ecx, edi
push 0
push 0xc
push 0
push 4
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0xc8], 0
jne 0x5e64c6
cmp dword [esp + 0xd4], 0x100
jl 0x5e64c6
mov ecx, edi
call fcn.005f3660
mov esi, eax
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e7c22
mov edx, 0x11
mov ecx, edi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e7c22
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e649a
mov byte [eax], 0x3b
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e7c22
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e7a6c
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e7a9a
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e6636
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e64ef
mov byte [eax], 0x3b
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e6636
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e6523
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e6551
xor ebp, ebp
mov dword [esp + 0x10], 0
jmp 0x5e6759
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e662e
mov eax, dword [edi + 0x30]
mov dword [ebp], eax
mov dword [edi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x6000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edi + 0x1c], ebp
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e658d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e65b8
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e662e
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 0x5e6636
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e69f4
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], 0x2000
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 0x5e69ac
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e69d3
mov dword [edi], 2
xor ebp, ebp
mov ecx, edi
call fcn.005f3660
mov esi, eax
mov edx, 0x20
mov ecx, edi
push 0
push 0xc
push dword [esp + 0x8c]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, dword [esp + 0xcc]
sub esp, 0xc
lea ebx, [esp + 0x58]
mov ecx, ebx
push 1
call fcn.005ff350
add esp, 0x10
mov edx, dword [esp + 0xc8]
sub esp, 8
lea eax, [esp + 0x194]
mov ecx, ebx
push 1
push eax
call fcn.005ff830
add esp, 0x10
cmp dword [edi], 0
jne 0x5e66c2
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e66b9
mov byte [eax], 0x3b
cmp dword [edi], 0
je 0x5e68d7
mov ecx, edi
call fcn.005f3660
test ebp, ebp
je 0x5e66e0
test eax, eax
je 0x5e66e0
mov ecx, dword [ebp + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
mov edx, 0x20
mov ecx, edi
push 0
push 0xc
push dword [esp + 0x8c]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov esi, dword [esp + 0x18c]
mov ecx, edi
call fcn.005f3660
test esi, esi
mov dword [esp + 0x10], ebp
je 0x5e6740
nop word cs:[eax + eax]
test eax, eax
je 0x5e6739
mov ecx, dword [esi]
test ecx, ecx
je 0x5e6739
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 0x5e6720
mov edx, 0x20
mov ecx, edi
push 0
push 4
push 0
push 0xc
call fcn.005f26a0
add esp, 0x10
xor ebp, ebp
xor esi, esi
cmp dword [edi], 0
je 0x5e6800
test ebp, ebp
je 0x5e68b6
mov ecx, edi
call fcn.005f3660
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], 0
cmp dword [edi], 0
jne 0x5e6ab4
mov edx, 0x11
mov ecx, edi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
mov dword [esp + 0x10], 0
cmp dword [edi], 0
jne 0x5e6ab4
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e67ce
mov byte [eax], 0x3b
mov dword [esp + 0x10], 0
cmp dword [edi], 0
jne 0x5e6ab4
mov ebx, dword [edi + 0x30]
mov ecx, dword [ebx + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e69ff
lea eax, [ebx + ecx + 8]
mov dword [ebx + 4], edx
jmp 0x5e6a2a
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e681a
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e6847
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5e68c5
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], 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 0x5e6882
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e68a9
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e68c5
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
test ebp, ebp
jne 0x5e676c
mov dword [esp + 0x1c], 0
xor ebx, ebx
jmp 0x5e6c9d
mov dword [edi], 2
xor esi, esi
test ebp, ebp
jne 0x5e676c
jmp 0x5e68b6
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e68f1
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e691e
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e69a1
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x4000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e6959
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6980
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e69a1
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
test esi, esi
je 0x5e66c2
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], esi
jmp 0x5e66c2
mov dword [edi], 2
jmp 0x5e66c2
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e69f4
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
test edi, edi
je 0x5e5e72
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edi
jmp 0x5e5e72
mov dword [esi], 2
jmp 0x5e5e72
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6aa6
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x6000
mov edx, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov dword [esp + 0x10], eax
mov dword [edi + 0x1c], eax
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e6a78
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6a9f
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e5d60
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6aa6
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 0x5e6ab4
mov dword [edi], 2
mov dword [esp + 0x10], 0
mov edx, 0x23
mov ecx, edi
push 0
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [edi], 0
je 0x5e6b6b
sub esp, 8
mov edx, 0x20
mov ecx, edi
push 0
push 1
call fcn.005ffe60
add esp, 0x10
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e6c9d
mov edx, 0x21
mov ecx, edi
push 0
push 1
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6b16
or byte [eax], 0x20
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e6c9d
mov edx, 1
mov ecx, edi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6b3f
mov byte [eax], 3
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e6c9d
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e6c05
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e6c32
movzx ebx, byte [esp + 0xd4]
mov eax, ebx
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e6b99
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e6bc0
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6be7
mov edx, 0x11
mov ecx, edi
push 0
push 1
push ebx
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6ad7
or byte [eax + 1], 0x38
jmp 0x5e6ad7
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6bfa
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [edi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], ebx
jmp 0x5e6ad7
mov dword [edi], 2
jmp 0x5e6ad7
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e781a
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x30000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 5
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e6c6d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6c98
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e781a
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 dword [esp + 0x18], ebx
mov ecx, edi
call fcn.005f3660
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x15c]
or eax, ebp
je 0x5e6cd1
mov edx, 0x23
mov ecx, edi
push 0
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
test ebp, ebp
je 0x5e6e49
cmp dword [edi], 0
jne 0x5e6e65
mov eax, dword [esp + 0xd4]
movzx ebx, ah
mov eax, ebx
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e6d12
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e6d3b
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6d66
mov edx, 0x11
mov ecx, edi
push 0
push 1
push ebx
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e6d74
or byte [eax + 1], 0x38
cmp dword [edi], 0
jne 0x5e6e65
jmp 0x5e6d7d
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6efa
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [edi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], ebx
cmp dword [edi], 0
jne 0x5e6e65
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e6d97
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e6dc4
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e6efa
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e6dff
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6e2a
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6efa
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 [esp + 0x1c], 0
je 0x5e6e49
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0xc], eax
cmp dword [edi], 0
jne 0x5e6e65
mov edx, 0x11
mov ecx, edi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [esp + 0x15c], 0
je 0x5e70a4
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e6fad
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e6e98
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6ec3
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6fa5
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [edi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], 0xd800
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e6fad
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e6f13
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e6f3c
mov dword [edi], 2
cmp dword [esp + 0x15c], 0
jne 0x5e6e73
jmp 0x5e70a4
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e6fa5
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x4000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e6f77
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e6f9e
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e6fa5
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 0x5e6fad
mov dword [edi], 2
xor ebx, ebx
sub esp, 8
mov edx, 0x65
mov ecx, edi
push 0xfc00
push 0x40
push 0
push 1
push 0
push 1
call fcn.005f2d10
add esp, 0x20
cmp dword [edi], 0
jne 0x5e702a
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e6fed
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e7018
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e737d
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [edi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], 0xd800
sub esp, 8
mov edx, 0x20
mov ecx, edi
push 0
push 1
call fcn.005ffe60
add esp, 0x10
cmp dword [edi], 0
jne 0x5e7086
mov edx, 0x21
mov ecx, edi
push 0
push 1
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7063
or byte [eax], 0x20
cmp dword [edi], 0
jne 0x5e7086
mov edx, 1
mov ecx, edi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7086
mov byte [eax], 3
mov ecx, edi
call fcn.005f3660
test ebx, ebx
je 0x5e70a4
test eax, eax
je 0x5e70a4
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov ecx, edi
call fcn.005f3660
test esi, esi
je 0x5e70c2
test eax, eax
je 0x5e70c2
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
test ebp, ebp
mov esi, dword [esp + 0x268]
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
je 0x5e7118
mov ecx, edi
call fcn.005f3660
cmp dword [esp + 0x10], 0
je 0x5e70fa
test eax, eax
je 0x5e70fa
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
mov ecx, edi
call fcn.005f3660
test ebx, ebx
je 0x5e7118
test eax, eax
je 0x5e7118
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov ecx, ebp
call fcn.005f3660
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x260]
test byte [eax + 0xb], 4
jne 0x5ea0f9
test esi, esi
jne 0x5e7542
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
mov word [esp + 0x18c], 0
mov word [esp + 0x198], 0
mov word [esp + 0x1a4], 0
mov word [esp + 0x1b0], 0
mov word [esp + 0x1bc], 0
mov word [esp + 0x1c8], 0
mov word [esp + 0x1d4], 0
mov word [esp + 0x1e0], 0
mov word [esp + 0x1ec], 0
mov word [esp + 0x1f8], 0
mov word [esp + 0x204], 0
mov word [esp + 0x210], 0
mov word [esp + 0x21c], 0
mov word [esp + 0x228], 0
mov word [esp + 0x234], 0
mov word [esp + 0x240], 0
mov dword [esp + 0x170], 0x2710
mov edx, dword [esp + 0x50]
sub esp, 4
lea eax, [esp + 0x174]
lea esi, [esp + 0x190]
lea ecx, [esp + 0x50]
push eax
push 0x10
push esi
call fcn.00600340
add esp, 0x10
mov ebx, eax
test ebx, ebx
jle 0x5e753b
mov ecx, 3
xor edi, edi
mov edx, 0xffffffff
lea eax, [esp + 0x18c]
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], ebx
mov esi, edx
lea edx, [esi + 1]
test edi, edi
je 0x5e7279
mov ebx, esi
sub ebx, dword [esp + 0x10]
inc ebx
cmp ebx, ecx
jle 0x5e7275
mov ebp, ecx
movzx ecx, word [eax - 0xc]
cmp ecx, 0xff
mov ecx, dword [esp + 0x18]
cmovb ecx, esi
mov dword [esp + 0x18], ecx
mov ecx, ebp
cmovb ecx, ebx
mov ebx, dword [esp + 0x1c]
xor esi, esi
cmp edx, ebx
jge 0x5e72a7
mov ebp, ecx
movzx ecx, word [eax]
xor esi, esi
cmp ecx, 0xfe
ja 0x5e72a5
test edi, edi
mov ecx, dword [esp + 0x10]
cmove ecx, edx
mov dword [esp + 0x10], ecx
mov ecx, 1
cmove edi, ecx
mov esi, edi
mov ecx, ebp
add eax, 0xc
cmp ebx, edx
mov edi, esi
jne 0x5e7245
cmp dword [esp + 0x18], 0
mov ebp, dword [esp + 0x14]
js 0x5e7388
mov esi, dword [esp + 0x4c]
cmp dword [esi], 0
jne 0x5ea0f2
mov dword [esp + 0x10], ecx
sub esp, 0xc
push 0x104
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e7825
mov eax, dword [esp + 0x58]
mov dword [ebp], eax
mov dword [esp + 0x58], ebp
add ebp, 4
mov ecx, dword [esp + 0x10]
mov eax, ecx
mov esi, ecx
add al, al
sub esp, 0x10
movzx eax, al
mov dword [esp + 4], eax
mov dword [esp], ebp
mov dword [esp + 8], pe_nt_image_headers32
call sub.msvcrt.dll_memset
mov eax, esi
add esp, 0x10
test eax, eax
jle 0x5e738a
xor eax, eax
mov ecx, dword [esp + 0x18]
sub ecx, eax
lea ecx, [ecx + ecx*2]
movzx edx, word [esp + ecx*4 + 0x18c]
test edx, edx
je 0x5e7364
lea ecx, [esp + ecx*4 + 0x18c]
lea edx, [ecx + edx*2]
add ecx, 2
lea ebx, [eax + eax]
movzx esi, byte [ecx]
movzx edi, byte [ebp + esi]
cmp ebx, edi
jge 0x5e735d
mov byte [ebp + esi], bl
add ecx, 2
cmp ecx, edx
jbe 0x5e734d
inc eax
cmp eax, dword [esp + 0x10]
jne 0x5e7328
mov ebx, dword [esp + 0x1c]
test ebx, ebx
jg 0x5e738e
mov esi, 0xffffffff
jmp 0x5e741a
mov dword [edi], 2
jmp 0x5e702a
xor ebp, ebp
test ebx, ebx
jle 0x5e7373
mov edx, 0xffffffff
xor eax, eax
lea ecx, [esp + 0x18c]
cmp edx, 0xffffffff
je 0x5e7401
lea esi, [edx + edx]
lea edi, [esi + esi*2]
movzx esi, word [esp + edi*2 + 0x18c]
cmp esi, 2
jne 0x5e73fd
movzx esi, word [ecx]
cmp esi, 2
ja 0x5e73fd
movzx esi, si
cmp esi, 1
mov esi, eax
je 0x5e7410
movzx esi, word [esp + edi*2 + 0x190]
or edi, 1
xor si, word [esp + edi*2 + 0x18c]
movzx esi, si
lea edi, [esi + 0xffff]
test edi, esi
je 0x5e73fd
movzx esi, word [ecx + 4]
xor si, word [ecx + 2]
movzx esi, si
lea edi, [esi + 0xffff]
test edi, esi
mov esi, eax
je 0x5e7410
mov esi, edx
jmp 0x5e7410
movzx edx, word [ecx]
cmp edx, 3
mov esi, eax
jb 0x5e7410
mov esi, 0xffffffff
inc eax
add ecx, 0xc
cmp ebx, eax
mov edx, esi
jne 0x5e739c
mov eax, dword [esp + 0x18]
test eax, eax
js 0x5e74fd
cmp eax, esi
mov edi, 0xffffffff
cmovne edi, esi
dec ebx
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x84]
test eax, eax
je 0x5e77df
mov edx, 0x20
mov esi, dword [esp + 0xc]
mov ecx, esi
push eax
push 0x8d
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push 0
push 0xb
push 0
push 4
call fcn.005f26a0
add esp, 0x10
xor ebx, ebx
cmp dword [esi], 0
jne 0x5e8f8f
mov eax, dword [esp + 0x1c]
lea eax, [eax + eax]
mov edx, 0x11
mov ecx, esi
push 0
push 0xb
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e74a8
or byte [eax + 1], 0x28
xor ebx, ebx
cmp dword [esi], 0
jne 0x5e8f8f
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xb
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e74d1
mov byte [eax], 0x3b
xor ebx, ebx
cmp dword [esi], 0
jne 0x5e8f8f
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e87d0
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8801
test esi, esi
mov ebp, dword [esp + 0x14]
js 0x5e753b
lea eax, [esi + esi]
lea eax, [eax + eax*2]
movzx ecx, word [esp + eax*2 + 0x18c]
add ecx, eax
or eax, 1
movzx edi, word [esp + ecx*2 + 0x18c]
movzx edx, word [esp + eax*2 + 0x18c]
sub esp, 8
lea ecx, [esp + 0x54]
push esi
push edi
call fcn.00600e10
jmp 0x5e9ffb
mov esi, dword [esp + 0x268]
mov eax, dword [esp + 0x260]
mov ecx, dword [eax + 0xc]
test cl, 0x10
jne 0x5e7623
test ch, 1
jne 0x5e76a2
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x5ea0f9
test byte [eax + 4], 1
je 0x5ea0f9
mov esi, dword [esp + 0x4c]
mov dword [esp + 0x18c], 0
cmp dword [esp + 0x84], 0
je 0x5e75c3
mov edx, 0x20
mov ecx, esi
push 0
push 0xb
push 0
push 5
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push dword [esp + 0x84]
push 0x8d
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
mov dword [esp + 0x10], eax
xor edi, edi
cmp dword [esi], 0
jne 0x5e8348
mov edx, 1
mov ecx, esi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e75f7
mov byte [eax], 0x3b
xor edi, edi
cmp dword [esi], 0
jne 0x5e8348
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e7bab
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e7bd8
mov ax, word [eax + 0x18]
movzx edx, ax
test cl, 0x20
je 0x5e7680
cmp edx, 0xff
ja 0x5e764a
mov eax, dword [esp + 0xa0]
movzx eax, byte [eax + edx]
cmp edx, 0x80
jb 0x5e7680
cmp dword [esp + 0x15c], 0
je 0x5e7680
mov eax, edx
and eax, 0xff80
shr eax, 7
movzx eax, byte [eax + 0x6f7ff0]
shl eax, 7
mov ecx, edx
and ecx, 0x7f
or ecx, eax
movzx eax, word [ecx + ecx + 0x6fa1f0]
mov eax, dword [eax*8 + 0x6f6974]
add eax, edx
sub esp, 0x10
movzx eax, ax
mov dword [esp], eax
mov dword [esp + 4], 0
lea ecx, [esp + 0x5c]
call fcn.00600e10
add esp, 0x10
jmp 0x5ea0f9
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x18c], 0
cmp dword [esp + 0x84], 0
je 0x5e76f1
mov edx, 0x20
mov ecx, edi
push 0
push 0xb
push 0
push 4
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push dword [esp + 0x84]
push 0x8d
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0xc8], 0
jne 0x5e775d
cmp dword [esp + 0xd4], 0x100
jl 0x5e775d
xor eax, eax
cmp dword [edi], 0
jne 0x5e84ef
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7731
mov byte [eax], 0x3b
xor eax, eax
cmp dword [edi], 0
jne 0x5e84ef
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e844b
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e847a
mov edx, 0x20
mov ecx, edi
push 0
push 8
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 4
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
xor esi, esi
cmp dword [edi], 0
jne 0x5e78ea
mov edx, 1
mov ecx, edi
push 0
push 3
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e77b7
mov byte [eax], 0x3b
xor esi, esi
cmp dword [edi], 0
jne 0x5e78ea
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e783d
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e786a
mov esi, dword [esp + 0xc]
cmp dword [esi], 0
jne 0x5e8fc4
mov eax, dword [esp + 0x1c]
lea eax, [eax + eax]
mov edx, 0x11
mov ecx, esi
push 0
push 0xb
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8fc4
or byte [eax + 1], 0x28
jmp 0x5e8fc4
mov dword [edi], 2
jmp 0x5e68be
cmp dword [esi], 0
mov ebp, dword [esp + 0x14]
jne 0x5ea0f2
mov dword [esi], 2
jmp 0x5ea0f2
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5e78e2
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], 0xa000
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 0x5e78b4
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e78db
cmp dword [ebp], 0
jne 0x5e5b29
jmp 0x5e6256
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e78e2
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 0x5e78ea
mov dword [edi], 2
xor esi, esi
mov dword [esp + 0x10], esi
lea esi, [esp + 0x4c]
mov ecx, esi
call fcn.006030e0
mov ecx, edi
call fcn.005f3660
mov ebp, eax
mov dword [esp + 0x108], ebp
mov edx, dword [esp + 0xcc]
sub esp, 0xc
mov ecx, esi
push 1
call fcn.005ff350
add esp, 0x10
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e7a07
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7948
mov byte [eax], 0x3b
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e7a07
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e796d
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e7996
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e79ff
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x6000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e79d1
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e79f8
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e79ff
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 0x5e7a07
mov dword [edi], 2
xor ebx, ebx
mov eax, dword [esp + 0xc8]
dec eax
xor esi, esi
cmp eax, 1
ja 0x5e7fa4
xor esi, esi
cmp dword [edi], 0
jne 0x5e7fa4
mov edx, 0x11
mov ecx, edi
push 0
push 1
push 0xd
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7a44
or byte [eax + 1], 0x38
xor esi, esi
cmp dword [edi], 0
jne 0x5e7fa4
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e7ad9
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e7b06
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e7c1a
mov eax, dword [edi + 0x30]
mov dword [ebp], eax
mov dword [edi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x6000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edi + 0x1c], ebp
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e7b41
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e7b6c
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5e7f9c
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], 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 0x5e7b76
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e7ba1
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e7c1a
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 0x5e7c22
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e7f9c
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 0x5e7fa4
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5e8340
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], 0x6000
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 0x5e8312
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8339
mov dword [edi], 2
xor ebp, ebp
mov edx, 0x23
mov ecx, edi
push 0xfffffffffffffffe
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x23
mov ecx, edi
push 0
push 0x8c
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [edi], 0
jne 0x5e7dce
mov eax, dword [esp + 0xd4]
movzx ebx, ah
mov eax, ebx
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e7c8f
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e7cb8
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e7ce3
mov edx, 0x11
mov ecx, edi
push 0
push 1
push ebx
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7cf1
or byte [eax + 1], 0x38
cmp dword [edi], 0
jne 0x5e7dce
jmp 0x5e7cfa
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e7dc8
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [edi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], ebx
cmp dword [edi], 0
jne 0x5e7dce
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e7d14
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e7d41
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e7dc8
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e7d7c
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e7da3
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e7dc8
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
test esi, esi
je 0x5e7f8c
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], esi
mov bl, 1
cmp dword [edi], 0
jne 0x5e7e07
jmp 0x5e7dd8
mov dword [edi], 2
test esi, esi
setne bl
cmp dword [edi], 0
jne 0x5e7e07
movzx eax, byte [esp + 0xd4]
mov edx, 0x11
mov ecx, edi
push 0
push 3
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7dfe
or byte [eax + 1], 0x38
cmp dword [edi], 0
je 0x5e7eb0
mov ecx, edi
call fcn.005f3660
test ebp, ebp
je 0x5e7e25
test eax, eax
je 0x5e7e25
mov ecx, dword [ebp + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
cmp dword [edi], 0
mov dword [esp + 0x10], ebp
jne 0x5e6740
mov esi, dword [edi + 0x58]
add esi, dword [esp + 0x84]
mov edx, 1
mov ecx, edi
push 0xfffffffffffffffe
push 0x8c
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7e82
mov byte [eax], 0x8d
mov edx, 1
mov ecx, edi
push esi
push 0x8d
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e7e82
mov byte [eax], 0x89
jmp 0x5e6740
cmp dword [edi], 4
jne 0x5e6740
sub esp, 8
mov edx, 0x2d2b2928
mov ecx, edi
push 2
push 0x40
push 0
push 0xc
push esi
push 0x8d
call fcn.005fda10
add esp, 0x20
jmp 0x5e6740
mov dword [esp + 0x18], ebx
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e7ece
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e7efb
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e7f81
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x2000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e7f36
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e7f5d
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e7f81
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 byte [esp + 0x18], 0
je 0x5e7e07
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], esi
jmp 0x5e7e07
mov dword [edi], 2
jmp 0x5e7e07
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e7e07
jmp 0x5e7dd8
mov dword [edi], 2
xor esi, esi
mov edx, dword [esp + 0xc8]
sub esp, 8
lea eax, [esp + 0x194]
lea ecx, [esp + 0x54]
push 0
push eax
call fcn.005ff830
add esp, 0x10
mov eax, dword [esp + 0x18c]
test eax, eax
je 0x5e7fef
test ebp, ebp
je 0x5e7fe8
mov ecx, dword [eax]
test ecx, ecx
je 0x5e7fe8
mov edx, dword [ecx + 8]
and edx, 0xfffffffc
or edx, 1
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], ebp
mov eax, dword [eax + 4]
test eax, eax
jne 0x5e7fcf
mov eax, dword [esp + 0xc8]
dec eax
cmp eax, 1
ja 0x5e829d
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e80c1
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e8025
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e804f
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e80b9
mov eax, dword [edi + 0x30]
mov dword [ebp], eax
mov dword [edi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x30000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edi + 0x1c], ebp
add dword [edi + 0x48], 5
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e808b
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e80b2
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e80b9
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 0x5e80c1
mov dword [edi], 2
xor ebp, ebp
mov ecx, edi
call fcn.005f3660
test esi, esi
je 0x5e80df
test eax, eax
je 0x5e80df
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
xor esi, esi
cmp dword [edi], 0
jne 0x5e81c7
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8108
mov byte [eax], 0x3b
xor esi, esi
cmp dword [edi], 0
jne 0x5e81c7
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e812d
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8156
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5e81bf
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], 0x6000
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 0x5e8191
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e81b8
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e81bf
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 0x5e81c7
mov dword [edi], 2
xor esi, esi
mov edx, 0x23
mov ecx, edi
push 0
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [edi], 0
jne 0x5e8205
mov edx, 0x11
mov ecx, edi
push 0
push 1
push 0xa
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8205
or byte [eax + 1], 0x38
sub esp, 8
mov edx, 0x20
mov ecx, edi
push 0
push 1
call fcn.005ffe60
add esp, 0x10
cmp dword [edi], 0
jne 0x5e8261
mov edx, 0x21
mov ecx, edi
push 0
push 1
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e823e
or byte [eax], 0x20
cmp dword [edi], 0
jne 0x5e8261
mov edx, 1
mov ecx, edi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8261
mov byte [eax], 3
mov ecx, edi
call fcn.005f3660
test esi, esi
je 0x5e827f
test eax, eax
je 0x5e827f
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov ecx, edi
call fcn.005f3660
test ebp, ebp
je 0x5e829d
test eax, eax
je 0x5e829d
mov ecx, dword [ebp + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
mov ecx, edi
call fcn.005f3660
test ebx, ebx
je 0x5e82bb
test eax, eax
je 0x5e82bb
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov ecx, edi
call fcn.005f3660
mov edx, dword [esp + 0x10]
test edx, edx
mov esi, dword [esp + 0x268]
mov ebp, dword [esp + 0x14]
je 0x5e82e8
test eax, eax
je 0x5e82e8
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
cmp dword [esp + 0x84], 0
je 0x5ea0f9
mov edx, 0x20
mov ecx, edi
push 0
push 4
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
jmp 0x5ea0f9
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8340
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 0x5e8348
mov dword [esi], 2
xor edi, edi
mov eax, dword [esp + 0x3c]
lea ebx, [eax + 8]
mov edx, 0x23
mov ecx, esi
push 0
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0x15c], 0
je 0x5e838a
mov edx, 0x20
mov ecx, esi
push 0
push 1
push 0
push 4
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x3c]
mov al, byte [eax + 0x27]
shr al, 7
movzx eax, al
sub esp, 4
lea ebp, [esp + 0x190]
lea ecx, [esp + 0x50]
mov edx, ebx
push ebp
push 1
push eax
call fcn.00603250
add esp, 0x10
xor ebp, ebp
test eax, eax
jne 0x5e8941
xor ebp, ebp
cmp dword [esi], 0
jne 0x5e887d
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e83e2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e840d
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8875
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [esi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], 0xff
xor ebp, ebp
cmp dword [esi], 0
jne 0x5e887d
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e875f
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e878d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x5e84e7
mov eax, dword [edi + 0x30]
mov dword [ecx], eax
mov dword [edi + 0x30], ecx
mov dword [ecx + 4], 0x10
add ecx, 8
mov esi, ecx
mov edx, esi
mov dword [edx], 0
mov dword [edx + 8], 0x6000
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 0x5e84b7
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e84de
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e84e7
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, esi
jmp 0x5e84ef
mov dword [edi], 2
xor eax, eax
mov dword [esp + 0x18], eax
mov edx, 0x20
mov ecx, edi
push 0
push 8
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 4
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 8
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
xor esi, esi
cmp dword [edi], 0
jne 0x5e856e
mov edx, 1
mov ecx, edi
push 0
push 3
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8563
mov byte [eax], 0x3b
xor esi, esi
cmp dword [edi], 0
je 0x5e8650
sub esp, 8
mov edx, 0x20
mov ecx, edi
push 3
push 3
call fcn.005ffe60
add esp, 0x10
cmp dword [edi], 0
jne 0x5e85ca
mov edx, 0x21
mov ecx, edi
push 0
push 3
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e85a7
or byte [eax], 0x20
cmp dword [edi], 0
jne 0x5e85ca
mov edx, 1
mov ecx, edi
push 0
push 3
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e85ca
mov byte [eax], 0x2b
mov dword [esp + 0x1c], esi
mov ecx, edi
call fcn.005f3660
mov dword [esp + 0x10], eax
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e9810
mov edx, 0x11
mov ecx, edi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e9810
mov edx, 1
mov ecx, edi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8624
mov byte [eax], 0x3b
xor ebp, ebp
cmp dword [edi], 0
jne 0x5e9810
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e8f12
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8f40
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e866a
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8699
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x5e8752
mov eax, dword [edi + 0x30]
mov dword [ecx], eax
mov dword [edi + 0x30], ecx
mov dword [ecx + 4], 0x10
add ecx, 8
mov ebx, ecx
mov edx, ebx
mov dword [edx], 0
mov dword [edx + 8], 0xa000
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 0x5e86d6
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e86fd
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8752
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 esi, ebx
jne 0x5e856e
mov edx, 0x11
mov ecx, edi
push 0
push 1
push 4
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [edi], 0
jne 0x5e856e
mov edx, 1
mov ecx, edi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e874b
mov byte [eax], 0x3b
mov esi, ebx
jmp 0x5e856e
mov dword [edi], 2
xor esi, esi
jmp 0x5e856e
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e8875
mov eax, dword [esi + 0x30]
mov dword [ebp], eax
mov dword [esi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x4000
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [esi + 0x1c], ebp
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e8847
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e886e
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e8f83
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x30]
mov dword [ebx], eax
mov dword [ecx + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0xa000
mov edx, dword [esp + 0xc]
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edx + 0x1c], ebx
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e8ed8
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8f07
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8875
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 0x5e887d
mov dword [esi], 2
xor ebp, ebp
mov edx, 0x20
mov ecx, esi
push 0xff
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
test ebp, ebp
je 0x5e88b5
test eax, eax
je 0x5e88b5
mov ecx, dword [ebp + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
sub esp, 8
mov edx, 0x65
mov ecx, esi
push 7
push 0x40
push 0
push 1
push 0
push 3
call fcn.005f2d10
add esp, 0x20
cmp dword [esi], 0
jne 0x5e88f6
mov edx, 0x21
mov ecx, esi
push 0
push 1
push 3
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e88f6
or byte [eax], 0x28
mov edx, 0x21
mov ecx, esi
push ebx
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
je 0x5e89af
sub esp, 8
mov edx, 0x265
mov ecx, esi
push 0
push 3
push 0
push 1
push 0
push 0
call fcn.005f2d10
add esp, 0x20
xor ebp, ebp
cmp dword [esi], 0
je 0x5e89d0
cmp dword [esp + 0x15c], 0
je 0x5e8962
mov edx, 0x20
mov ecx, esi
push 0
push 4
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5e897e
mov edx, 0x11
mov ecx, esi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [esp + 0x15c], 0
je 0x5e8d31
cmp dword [esi], 0
jne 0x5e8c58
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e89f1
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8a1c
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e8a58
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8a83
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e8ade
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8b0c
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8c52
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [esi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], 0xd800
cmp dword [esi], 0
jne 0x5e8c58
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e8ba2
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8bcf
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8ecd
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [esi + 0x48], 5
mov byte [eax + 1], 0xbd
mov dword [eax + 2], 1
mov edx, 0x21
mov ecx, esi
push 0
push 0xe
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8918
or byte [eax], 0x20
mov edx, 1
mov ecx, esi
push 0
push 3
push 0
push 0xe
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8918
mov byte [eax], 0x89
jmp 0x5e8918
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e8b87
mov eax, dword [esi + 0x30]
mov dword [ebp], eax
mov dword [esi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x2000
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [esi + 0x1c], ebp
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e8b48
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8b6f
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8b87
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 [esp + 0x15c], 0
jne 0x5e894b
jmp 0x5e8962
mov dword [esi], 2
xor ebp, ebp
cmp dword [esp + 0x15c], 0
jne 0x5e894b
jmp 0x5e8962
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e8c52
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], 0x4000
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 0x5e8c0a
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8c31
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8c52
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 [esp + 0x10], 0
je 0x5e8c58
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x10]
mov dword [ebx + 0xc], eax
jmp 0x5e8c58
mov dword [esi], 2
sub esp, 8
mov edx, 0x65
mov ecx, esi
push 0xfc00
push 0x40
push 0
push 1
push 0
push 1
call fcn.005f2d10
add esp, 0x20
cmp dword [esi], 0
jne 0x5e8cd5
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e8c98
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8cc3
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8ec2
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [esi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], 0xd800
sub esp, 8
mov edx, 0x20
mov ecx, esi
push 0
push 1
call fcn.005ffe60
add esp, 0x10
cmp dword [esi], 0
jne 0x5e8d3a
mov edx, 0x21
mov ecx, esi
push 0
push 1
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8d0e
or byte [eax], 0x20
cmp dword [esi], 0
jne 0x5e8d3a
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8d31
mov byte [eax], 3
cmp dword [esi], 0
je 0x5e8dd6
test ebp, ebp
je 0x5e8d58
mov ecx, esi
call fcn.005f3660
test eax, eax
je 0x5e8d58
mov ecx, dword [ebp + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
mov ebx, dword [esp + 0x18c]
test ebx, ebx
mov ebp, dword [esp + 0x14]
je 0x5e8d8e
mov ecx, esi
call fcn.005f3660
test eax, eax
je 0x5e8d87
mov ecx, dword [ebx]
test ecx, ecx
je 0x5e8d87
mov edx, dword [ecx + 8]
and edx, 0xfffffffc
or edx, 1
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x5e8d6e
mov ecx, esi
call fcn.005f3660
test edi, edi
je 0x5e8dac
test eax, eax
je 0x5e8dac
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
cmp dword [esp + 0x84], 0
je 0x5ea0f2
mov edx, 0x20
mov ecx, esi
push 0
push 5
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
jmp 0x5ea0f2
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e8df0
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e8e1d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5e8eaf
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], 0x30000
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], 5
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e8e58
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e8e7f
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8eaf
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 [esp + 0x10], 0
je 0x5e8d3a
mov eax, dword [ebx + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x10]
mov dword [ebx + 0xc], eax
test ebp, ebp
jne 0x5e8d3e
jmp 0x5e8d58
mov dword [esi], 2
test ebp, ebp
jne 0x5e8d3e
jmp 0x5e8d58
mov dword [esi], 2
jmp 0x5e8cd5
mov dword [esi], 2
jmp 0x5e8918
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e8f83
mov edx, dword [esp + 0xc]
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 esi, dword [esp + 0xc]
jmp 0x5e8f8f
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e9808
mov eax, dword [edi + 0x30]
mov dword [ebp], eax
mov dword [edi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x6000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edi + 0x1c], ebp
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e9724
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e974f
mov esi, dword [esp + 0xc]
mov dword [esi], 2
xor ebx, ebx
mov edx, 0x20
mov ecx, esi
push 0
push 1
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
test ebx, ebx
je 0x5e8fc4
test eax, eax
je 0x5e8fc4
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov ecx, esi
call fcn.005f3660
mov ebx, eax
xor eax, eax
cmp dword [esi], 0
mov dword [esp + 0xc], esi
mov dword [esp + 0x30], ebx
jne 0x5e90d9
mov edx, 1
mov ecx, esi
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e8ffe
mov byte [eax], 0x3b
xor eax, eax
cmp dword [esi], 0
jne 0x5e90d9
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e9023
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e9050
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test eax, eax
je 0x5e90cd
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], 0x6000
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [esp + 0x2c], 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 0x5e908f
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e90ba
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e90c9
mov edx, dword [esp + 0xc]
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 esi, dword [esp + 0xc]
mov eax, dword [esp + 0x2c]
jmp 0x5e90d5
mov esi, dword [esp + 0xc]
mov dword [esi], 2
xor eax, eax
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x18]
add eax, eax
mov edx, 0x21
mov ecx, esi
push eax
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x21
mov ecx, esi
push ebp
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5e9165
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e9138
mov byte [eax], 3
cmp dword [esi], 0
jne 0x5e9165
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 0
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e915c
or byte [eax + 1], 0x38
cmp dword [esi], 0
je 0x5e92f4
test ebx, ebx
setne al
mov dword [esp + 0x18], eax
mov eax, edi
mov dword [esp + 0x10], eax
test edi, edi
mov ebx, dword [esp + 0x1c]
js 0x5e9cb6
mov eax, dword [esp + 0x10]
lea esi, [eax + eax]
mov edx, 0x23
mov edi, dword [esp + 0xc]
mov ecx, edi
push esi
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [edi], 0
jne 0x5e91c2
mov edx, 0x11
mov ecx, dword [esp + 0xc]
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
lea ebx, [esi + esi*2]
movzx eax, word [esp + ebx*2 + 0x18c]
mov edi, ebx
or edi, 1
cmp eax, 1
movzx edx, word [esp + edi*2 + 0x18c]
jne 0x5e9227
mov eax, dword [esp + 0xc]
cmp dword [eax], 0
mov ebx, dword [esp + 0x1c]
jne 0x5e9cb6
mov esi, edx
mov eax, edx
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e92c7
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e933a
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9369
movzx ebp, word [esp + ebx*2 + 0x190]
xor bp, dx
movzx esi, bp
lea eax, [esi + 0xffff]
test eax, esi
je 0x5e9281
xor edi, edi
mov ecx, dword [esp + 0xc]
cmp dword [ecx], 0
jne 0x5e97db
mov esi, edx
mov eax, edx
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e9315
mov ecx, dword [ecx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e952f
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e955e
mov eax, dword [esp + 0xc]
cmp dword [eax], 0
mov ebx, dword [esp + 0x1c]
jne 0x5e9cb6
mov eax, esi
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e9402
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e9692
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e96c1
mov edx, 0x11
mov ecx, dword [esp + 0xc]
push 0
push 1
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e942b
or byte [eax + 1], 0x38
mov ecx, dword [esp + 0xc]
jmp 0x5e937b
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e938d
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e93bf
mov edx, 0x11
push 0
push 1
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e9570
or byte [eax + 1], 0x38
jmp 0x5e9570
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9ca8
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
mov ecx, dword [esp + 0xc]
add dword [ecx + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], esi
cmp dword [ecx], 0
mov ebx, dword [esp + 0x1c]
jne 0x5e9cb6
jmp 0x5e943c
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e95a0
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x30]
mov dword [ebp], eax
mov dword [ecx + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x2000
mov edx, dword [esp + 0xc]
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edx + 0x1c], ebp
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e945d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e948c
mov edx, 0x11
mov ecx, dword [esp + 0xc]
push 0
push 1
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e96d3
or byte [eax + 1], 8
jmp 0x5e96d3
mov eax, dword [esp + 0xc]
cmp dword [eax], 0
mov ebx, dword [esp + 0x1c]
jne 0x5e9cb6
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e94b6
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e94e8
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e95a0
mov edx, dword [esp + 0xc]
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
cmp dword [esp + 0x30], 0
je 0x5e960e
mov eax, dword [ebp + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x30]
mov dword [ebp + 0xc], eax
mov al, 1
jmp 0x5e916a
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e9ca8
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x30]
mov dword [ebp], eax
mov dword [ecx + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x2000
mov edx, dword [esp + 0xc]
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edx + 0x1c], ebp
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e95b3
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e95e2
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e97cf
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
mov ecx, dword [esp + 0xc]
add dword [ecx + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], esi
xor edi, edi
mov ecx, dword [esp + 0xc]
cmp dword [ecx], 0
jne 0x5e97db
mov eax, dword [ecx + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e961b
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e964c
mov eax, dword [esp + 0xc]
mov dword [eax], 2
mov ebx, dword [esp + 0x30]
jmp 0x5e9165
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9ca8
mov edx, dword [esp + 0xc]
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
cmp byte [esp + 0x18], 0
mov ebx, dword [esp + 0x1c]
je 0x5e9cb6
mov eax, dword [ebp + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x30]
mov dword [ebp + 0xc], eax
jmp 0x5e9cb6
mov dword [esp + 0x18], 0
jmp 0x5e916e
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5e97cf
mov ecx, dword [esp + 0xc]
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], 0
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x1c]
lea ebp, [ecx + 0xc]
test eax, eax
cmove eax, ebp
mov dword [eax], edi
mov dword [ecx + 0x1c], edi
add dword [ecx + 0x48], 6
mov ecx, dword [ecx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e9759
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9784
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9ca8
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
mov ecx, dword [esp + 0xc]
add dword [ecx + 0x48], 5
mov byte [eax + 1], 0xd
mov dword [eax + 2], esi
mov eax, dword [esp + 0xc]
cmp dword [eax], 0
mov ebx, dword [esp + 0x1c]
jne 0x5e9cb6
or bp, word [esp + edi*2 + 0x18c]
movzx esi, bp
mov eax, esi
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e9b77
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e9b99
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9bc8
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9808
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 0x5e9810
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e97cf
mov edx, dword [esp + 0xc]
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 ecx, dword [esp + 0xc]
cmp dword [ecx], 0
jne 0x5e97db
movzx esi, word [esp + ebx*2 + 0x190]
mov eax, esi
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e9c09
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5f1d08
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f1d37
mov ecx, dword [esp + 0xc]
mov dword [ecx], 2
xor edi, edi
call fcn.005f3660
test edi, edi
mov ebx, dword [esp + 0x1c]
je 0x5e9cb6
test eax, eax
je 0x5e9cb6
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
jmp 0x5e9cb6
mov dword [edi], 2
xor ebp, ebp
mov edx, 0x23
mov ecx, edi
push 0xfffffffffffffffc
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x23
mov ecx, edi
push 0xfffffffffffffffe
push 0x8c
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [edi], 0
jne 0x5e99c3
mov eax, dword [esp + 0xd4]
movzx esi, ah
mov eax, esi
sub eax, 0xffffff80
cmp eax, 0x100
jb 0x5e987d
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e98a6
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e98d1
mov edx, 0x11
mov ecx, edi
push 0
push 1
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e98df
or byte [eax + 1], 0x38
cmp dword [edi], 0
jne 0x5e99c3
jmp 0x5e98e8
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e99bd
mov ecx, dword [edi + 0x2c]
mov dword [eax], ecx
mov dword [edi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [edi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], esi
cmp dword [edi], 0
jne 0x5e99c3
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e9902
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e992f
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5e99bd
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 0x5e996a
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9991
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e99bd
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 [esp + 0x10], 0
je 0x5e9b67
mov eax, dword [esi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
mov dword [esi + 0xc], eax
mov bl, 1
cmp dword [edi], 0
jne 0x5e99ff
jmp 0x5e99d0
mov dword [edi], 2
cmp dword [esp + 0x10], 0
setne bl
cmp dword [edi], 0
jne 0x5e99ff
movzx eax, byte [esp + 0xd4]
mov edx, 0x11
mov ecx, edi
push 0
push 3
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e99f6
or byte [eax + 1], 0x38
cmp dword [edi], 0
je 0x5e9a8e
mov ecx, edi
call fcn.005f3660
test ebp, ebp
je 0x5e9a1d
test eax, eax
je 0x5e9a1d
mov ecx, dword [ebp + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], eax
mov ecx, edi
call fcn.005f3660
mov edx, dword [esp + 0x1c]
test edx, edx
mov esi, dword [esp + 0x268]
je 0x5e9a46
test eax, eax
je 0x5e9a46
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
mov ecx, edi
call fcn.005f3660
mov edx, dword [esp + 0x18]
test edx, edx
mov ebp, dword [esp + 0x14]
je 0x5e9a6c
test eax, eax
je 0x5e9a6c
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
cmp dword [esp + 0x84], 0
je 0x5ea0f9
mov edx, 0x20
mov ecx, edi
push 0
push 4
push 0
push 0xb
jmp 0x5e8305
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e9aa8
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e9ad5
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5e9b5c
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 0x5e9b10
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9b37
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9b5c
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
test bl, bl
je 0x5e99ff
mov eax, dword [esi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
mov dword [esi + 0xc], eax
jmp 0x5e99ff
mov dword [edi], 2
jmp 0x5e99ff
xor ebx, ebx
cmp dword [edi], 0
jne 0x5e99ff
jmp 0x5e99d0
mov edx, 0x11
mov ecx, dword [esp + 0xc]
push 0
push 1
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e9bda
or byte [eax + 1], 0x38
jmp 0x5e9bda
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9ca8
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
mov ecx, dword [esp + 0xc]
add dword [ecx + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], esi
mov eax, dword [esp + 0xc]
cmp dword [eax], 0
mov ebx, dword [esp + 0x1c]
jne 0x5e9cb6
mov eax, dword [esp + 0xc]
mov eax, dword [eax + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e9c32
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e9c60
mov edx, 0x11
mov ecx, dword [esp + 0xc]
push 0
push 1
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5f1d49
or byte [eax + 1], 0x38
jmp 0x5f1d49
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e9ca8
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x30]
mov dword [ebp], eax
mov dword [ecx + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x2000
mov edx, dword [esp + 0xc]
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edx + 0x1c], ebp
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
jbe 0x5e9523
sub esp, 0xc
push 0x1000
jmp 0x5e95bb
mov eax, dword [esp + 0xc]
mov dword [eax], 2
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
test edi, edi
mov esi, dword [esp + 0xc]
je 0x5e9efe
mov eax, dword [esp + 0x15c]
test eax, eax
je 0x5e9efe
mov edx, 0x23
mov ecx, esi
test edi, edi
js 0x5e9cf5
push 0xfffffffffffffffe
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
jmp 0x5e9d11
push 0
push 0x8c
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
je 0x5e9dcc
sub esp, 8
mov edx, 0x65
mov ecx, esi
push 0xfc00
push 0x40
push 0
push 1
push 0
push 1
call fcn.005f2d10
add esp, 0x20
cmp dword [esi], 0
jne 0x5e9d93
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 6]
cmp edx, 0xff8
ja 0x5e9d51
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9d7c
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9dff
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
add dword [esi + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], 0xdc00
cmp dword [esi], 0
je 0x5e9de5
test edi, edi
jns 0x5e9efe
cmp dword [esi], 0
jne 0x5e9efe
mov edx, 0x11
mov ecx, esi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e9efe
or byte [eax + 1], 0x28
jmp 0x5e9efe
mov edx, 0x11
mov ecx, esi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
jmp 0x5e9cf0
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5e9e0f
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5e9e41
mov dword [esi], 2
test edi, edi
jns 0x5e9efe
jmp 0x5e9d9b
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5e9ee4
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x30]
mov dword [ebp], eax
mov dword [ecx + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0
mov edx, dword [esp + 0xc]
mov eax, dword [edx + 0x1c]
lea ecx, [edx + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [edx + 0x1c], ebp
add dword [edx + 0x48], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5e9e81
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5e9eac
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5e9ee4
mov edx, dword [esp + 0xc]
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
cmp byte [esp + 0x18], 0
mov esi, dword [esp + 0xc]
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
je 0x5e9d93
mov eax, dword [ebp + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebp + 8], eax
mov eax, dword [esp + 0x30]
mov dword [ebp + 0xc], eax
test edi, edi
jns 0x5e9efe
jmp 0x5e9d9b
mov esi, dword [esp + 0xc]
mov dword [esi], 2
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
test edi, edi
js 0x5e9d9b
test edi, edi
mov ebp, dword [esp + 0x14]
js 0x5e9f2a
cmp dword [esi], 0
jne 0x5e9f2a
mov edx, 0x11
mov ecx, esi
push 0
push 0xc
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e9f2a
or byte [eax + 1], 0x28
mov ecx, esi
call fcn.005f3660
mov edx, dword [esp + 0x2c]
test edx, edx
je 0x5e9f4c
test eax, eax
je 0x5e9f4c
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x84]
test eax, eax
je 0x5e9fdb
mov edx, 0x20
mov ecx, esi
push eax
push 0x8d
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push 0
push 4
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
mov edi, esi
xor esi, esi
cmp dword [edi], 0
jne 0x5ea0bd
mov edx, 1
mov ecx, edi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5e9fb6
mov byte [eax], 0x3b
xor esi, esi
cmp dword [edi], 0
jne 0x5ea0bd
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea003
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ea034
cmp dword [esi], 0
jne 0x5ea0f2
add ebx, ebx
mov edx, 0x11
mov ecx, dword [esp + 0xc]
push 0
push 0xb
push ebx
push 0x40
call fcn.005fdd90
add esp, 0x10
jmp 0x5ea0f2
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5ea0ad
mov ecx, dword [esp + 0xc]
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], 0xa000
mov edx, dword [esp + 0xc]
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 0x5ea073
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ea09e
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ea0ad
mov edx, dword [esp + 0xc]
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 ebp, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
jmp 0x5ea0bd
mov edi, dword [esp + 0xc]
mov dword [edi], 2
xor esi, esi
mov ebp, dword [esp + 0x14]
mov edx, 0x20
mov ecx, edi
push 0
push 1
push 0
push 0xc
call fcn.005f26a0
add esp, 0x10
mov ecx, edi
call fcn.005f3660
test esi, esi
je 0x5ea0f2
test eax, eax
je 0x5ea0f2
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov esi, dword [esp + 0x268]
xor ecx, ecx
test esi, esi
je 0x5ea1da
mov eax, dword [esp + 0x74]
test eax, eax
mov dword [esp + 0x10], ecx
je 0x5ea2a8
mov ecx, dword [esp + 0x260]
movzx edx, word [ecx + 0x1a]
mov dword [esp + 0xc], edx
mov ebx, dword [ecx + 0xc]
mov esi, dword [esp + 0x4c]
mov edx, 0x20
mov ecx, esi
push eax
push 0x8d
push 0
push 3
call fcn.005f26a0
add esp, 0x10
xor edi, edi
cmp dword [esi], 0
mov eax, 0
jne 0x5ea42f
mov edx, 1
mov ecx, esi
push 0x3e8
push 0x8c
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea2bc
mov byte [eax], 0x8d
mov eax, dword [esi]
xor edi, edi
test eax, eax
mov eax, 0
jne 0x5ea42f
mov edx, 1
mov ecx, esi
push 0
push 0xb
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea1a9
mov byte [eax], 0x3b
xor edi, edi
cmp dword [esi], 0
mov eax, 0
jne 0x5ea42f
mov edi, dword [esi + 0x30]
mov ecx, dword [edi + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea35f
lea eax, [edi + ecx + 8]
mov dword [edi + 4], edx
jmp 0x5ea38a
mov eax, dword [esp + 0x3c]
cmp dword [eax + 0x28], 0
je 0x5ea2b5
xor ecx, ecx
mov eax, dword [esp + 0x260]
test byte [eax + 0xb], 4
jne 0x5ea103
mov edx, 0x20
mov ecx, ebp
push 0xffffffffffffffff
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
xor ecx, ecx
cmp dword [ebp], 0
jne 0x5ea103
mov eax, dword [esp + 0x3c]
mov esi, dword [eax + 0x28]
add esi, esi
mov edx, 1
mov ecx, ebp
push esi
push 0x8c
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea304
mov byte [eax], 0x8d
mov eax, dword [ebp]
xor ecx, ecx
test eax, eax
jne 0x5ea103
mov edx, 1
mov ecx, ebp
push 0
push 0xb
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea276
mov byte [eax], 0x3b
xor ecx, ecx
cmp dword [ebp], 0
jne 0x5ea103
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea9bf
lea ecx, [eax + ecx + 8]
mov dword [eax + 4], edx
mov eax, ecx
jmp 0x5ea9ec
mov dword [esp + 0x2c], 0
jmp 0x5eaca1
xor ecx, ecx
jmp 0x5ea103
mov eax, dword [esi]
cmp eax, 4
jne 0x5ea17c
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea34d
mov byte [eax], 0x89
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 0x3e8
push 0x40
call fcn.005fdd90
add esp, 0x10
jmp 0x5ea17a
mov eax, dword [ebp]
cmp eax, 4
jne 0x5ea24e
mov edx, 1
mov ecx, ebp
push 0
push 3
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea9ae
mov byte [eax], 0x89
mov edx, 0x11
mov ecx, ebp
push 0
push 3
push esi
push 0x40
call fcn.005fdd90
add esp, 0x10
jmp 0x5ea24b
xor edi, edi
cmp dword [esi], 0
mov eax, 0
jne 0x5ea42f
jmp 0x5ea2e5
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ea425
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 ecx, dword [esi + 0x1c]
lea edi, [esi + 0xc]
test ecx, ecx
cmove ecx, edi
mov dword [ecx], eax
mov ebp, 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 0x5ea3c7
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ea3ee
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ea425
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 0x5ea41f
mov edx, 1
mov ecx, esi
push 0
push 3
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea416
mov byte [eax], 0x3b
cmp dword [esi], 0
je 0x5eaa2c
xor eax, eax
mov edi, ebp
jmp 0x5ea42f
mov dword [esi], 2
xor edi, edi
xor eax, eax
test bl, 0x10
mov dword [esp + 0x18], eax
jne 0x5ea451
mov edx, 0x20
mov ecx, esi
push 0
push 0xc
push 0
push 1
call fcn.005f26a0
add esp, 0x10
jmp 0x5ea4b7
cmp dword [esi], 0
jne 0x5ea4b7
mov edx, 1
mov ecx, esi
push 2
push 0x8c
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea479
mov byte [eax], 0x8d
jmp 0x5ea4b7
cmp dword [esi], 4
jne 0x5ea4b7
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea4b2
mov byte [eax], 0x89
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 2
push 0x40
call fcn.005fdd90
jmp 0x5ea44c
cmp dword [esi], 0
je 0x5ea49c
mov dword [esp + 0x1c], edi
mov ecx, esi
call fcn.005f3660
mov dword [esp + 0x30], eax
xor edi, edi
cmp dword [esi], 0
jne 0x5ea5ae
mov edx, 1
mov ecx, esi
push 0
push 0xb
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea4ef
mov byte [eax], 0x3b
xor edi, edi
cmp dword [esi], 0
jne 0x5ea5ae
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea514
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ea53d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ea5a6
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], 0x6000
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 0x5ea578
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ea59f
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ea5a6
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 0x5ea5ae
mov dword [esi], 2
xor edi, edi
mov dword [esp + 0x2c], edi
mov edx, 0x23
mov ecx, esi
push 0
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
test bl, bl
jns 0x5ea626
mov edx, dword [esp + 0xc]
cmp edx, 0xff
mov ebp, edx
ja 0x5ea5f1
mov eax, dword [esp + 0xa0]
movzx ebp, byte [eax + edx]
cmp edx, 0x80
jb 0x5ea622
cmp dword [esp + 0x15c], 0
je 0x5ea622
mov eax, edx
shr eax, 7
movzx eax, byte [eax + 0x6f7ff0]
shl eax, 7
mov ecx, edx
and ecx, 0x7f
or ecx, eax
movzx eax, word [ecx + ecx + 0x6fa1f0]
mov ebp, dword [eax*8 + 0x6f6974]
add ebp, edx
cmp ebp, edx
jne 0x5ea688
xor ebx, ebx
cmp dword [esi], 0
mov edi, 0
jne 0x5eac01
mov edx, 0x11
mov ecx, esi
push 0
push 3
push dword [esp + 0x14]
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea657
or byte [eax + 1], 0x38
xor ebx, ebx
cmp dword [esi], 0
mov edi, 0
jne 0x5eac01
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea788
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ea7b5
mov eax, ebp
xor eax, dword [esp + 0xc]
lea ecx, [eax - 1]
test ecx, eax
mov ecx, dword [esi]
je 0x5ea6f8
xor ebx, ebx
test ecx, ecx
mov edi, 0
jne 0x5eac01
mov edx, 0x11
mov ecx, esi
push 0
push 3
push dword [esp + 0x14]
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea6c7
or byte [eax + 1], 0x38
xor ebx, ebx
cmp dword [esi], 0
mov edi, 0
jne 0x5eac01
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea86c
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ea899
xor ebx, ebx
test ecx, ecx
mov edi, 0
jne 0x5eac01
mov edx, 0x11
mov ecx, esi
push 0
push 3
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea725
or byte [eax + 1], 8
xor ebx, ebx
cmp dword [esi], 0
mov edi, 0
jne 0x5eac01
or ebp, dword [esp + 0xc]
mov edx, 0x11
mov ecx, esi
push 0
push 3
push ebp
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ea757
or byte [eax + 1], 0x38
xor ebx, ebx
cmp dword [esi], 0
mov edi, 0
jne 0x5eac01
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eab8b
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eabb4
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5eabf7
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 0x5ea7f0
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ea81b
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eabf7
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
xor edi, edi
mov word [eax], pe_nt_image_headers32
cmp dword [esi], 0
jne 0x5eac01
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [esi], 0
jne 0x5eac01
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ea93d
lea ebp, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ea96b
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5eabf7
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 edi, [esi + 0xc]
test eax, eax
cmove eax, edi
mov dword [eax], 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 0x5ea8d4
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ea8ff
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eabf7
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 0x5eabff
mov edx, 0x11
mov ecx, esi
push 0
push 3
push ebp
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec442
or byte [eax + 1], 0x38
cmp dword [esi], 0
jne 0x5eabff
jmp 0x5ec44b
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebp, eax
test ebp, ebp
je 0x5eaace
mov eax, dword [esi + 0x30]
mov dword [ebp], eax
mov dword [esi + 0x30], ebp
mov dword [ebp + 4], 0x10
add ebp, 8
mov dword [ebp], 0
mov dword [ebp + 8], 0x30000
mov eax, dword [esi + 0x1c]
lea ecx, [esi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebp
mov dword [esi + 0x1c], ebp
add dword [esi + 0x48], 5
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5eaa4d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eaa74
xor ecx, ecx
cmp dword [ebp], 0
jne 0x5ea103
jmp 0x5ea332
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eaad9
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx]
mov dword [eax], edx
mov dword [ecx], eax
mov dword [eax + 4], 0x10
add eax, 8
mov dword [eax], 0
mov dword [eax + 8], 0x8000
mov edx, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test edx, edx
cmovne ecx, edx
mov dword [ecx], eax
mov esi, eax
mov dword [ebp + 0x1c], eax
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5eaa99
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eaac2
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eaae7
lea ecx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eab14
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eaace
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 + 0x30]
test ecx, ecx
je 0x5eac01
mov eax, dword [ebp + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], ecx
jmp 0x5eac01
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eaad9
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov ecx, esi
jmp 0x5ea103
mov dword [esi], 2
jmp 0x5eac01
mov dword [ebp], 2
xor ecx, ecx
jmp 0x5ea103
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ecx, eax
test eax, eax
je 0x5ec437
mov eax, dword [esi + 0x30]
mov dword [ecx], eax
mov dword [esi + 0x30], ecx
mov dword [ecx + 4], 0x10
add ecx, 8
mov dword [ecx], 0
mov dword [ecx + 8], 0x4000
mov eax, dword [esi + 0x1c]
test eax, eax
cmovne edi, eax
mov dword [edi], ecx
mov dword [esp + 0x18], ecx
mov dword [esi + 0x1c], ecx
add dword [esi + 0x48], 6
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5eab50
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eab7b
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ec437
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 edi, ebp
mov eax, dword [esp + 0x18]
jmp 0x5ea42f
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5eabf7
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
jbe 0x5ea7e7
sub esp, 0xc
push 0x1000
jmp 0x5ea7f8
mov dword [esi], 2
xor ebx, ebx
xor edi, edi
mov ecx, esi
call fcn.005f3660
test ebx, ebx
je 0x5eac1f
test eax, eax
je 0x5eac1f
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
test edi, edi
mov ebp, dword [esp + 0x14]
je 0x5eac41
mov ecx, esi
call fcn.005f3660
test eax, eax
je 0x5eac41
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
mov edx, 0x20
mov ecx, esi
push 0
push 1
push dword [esp + 0x7c]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
mov edx, dword [esp + 0x18]
test edx, edx
je 0x5eac7f
test eax, eax
je 0x5eac7f
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
mov ecx, esi
call fcn.005f3660
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x5eaca1
test eax, eax
je 0x5eaca1
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push dword [esp + 0x74]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0x10
push 0x8d
push 0
push 9
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x90]
test eax, eax
je 0x5eacfb
mov edx, 0x20
mov ecx, ebp
push 0xffffffffffffffff
push 0x40
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x94]
test eax, eax
je 0x5ead2c
mov esi, dword [esp + 0x54]
add eax, 2
sub eax, dword [esp + 0x50]
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push dword [esi + eax*2]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x70]
cmp eax, dword [esp + 0x6c]
je 0x5ead4f
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x268]
cmp eax, 1
jne 0x5eadbb
xor esi, esi
cmp dword [ebp], 0
jne 0x5eae87
mov eax, dword [ebp + 0x58]
add eax, dword [esp + 0x80]
mov edx, 0x11
mov ecx, ebp
push eax
push 0x8d
push 0xffffffffffffffff
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ead92
or byte [eax + 1], 0x38
xor esi, esi
cmp dword [ebp], 0
jne 0x5eae87
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eade8
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eae13
cmp eax, 2
jne 0x5eaee7
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push dword [esp + 0x84]
push 0x8d
call fcn.005f26a0
add esp, 0x10
jmp 0x5eaee7
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5eae7e
mov ecx, dword [esp + 0x20]
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 0x5eae4e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eae77
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eae7e
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5eae87
mov dword [ebp], 2
xor esi, esi
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push dword [esp + 0x84]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x80]
add eax, 4
mov edx, 0x20
mov ecx, ebp
push 0
push 0xc
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov ecx, ebp
call fcn.005f3660
test esi, esi
je 0x5eaee7
test eax, eax
je 0x5eaee7
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov edx, dword [esp + 0x50]
sub esp, 8
lea eax, [esp + 0x180]
lea ecx, [esp + 0x54]
push eax
push dword [esp + 0x30]
call fcn.005f3740
add esp, 0x10
cmp dword [ebp], 0
je 0x5eafaa
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
test eax, eax
je 0x5eaf35
nop word [eax + eax]
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5eaf20
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
test eax, eax
je 0x5eaf55
nop
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5eaf40
sub esp, 0xc
push ebp
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x68]
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x60]
call dword [0x6f447c]
add esp, 0x10
mov eax, dword [esp + 0x58]
test eax, eax
je case.default.0x5e4cd8
nop dword [eax + eax]
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5eaf90
jmp case.default.0x5e4cd8
cmp dword [esp + 0xac], 0
je 0x5eb00b
mov eax, dword [ebp + 0x58]
add eax, dword [esp + 0x6c]
mov edx, 1
mov ecx, ebp
push eax
push 0x8d
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
mov esi, dword [esp + 0x260]
je 0x5eafe2
mov byte [eax], 0x3b
xor edi, edi
cmp dword [ebp], 0
jne 0x5eb0c0
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eb021
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eb04c
xor edi, edi
mov dword [esp + 0x24], 0
mov esi, dword [esp + 0x260]
jmp 0x5eb0cd
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5eb0b7
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebp + 0x1c], edi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5eb087
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eb0b0
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eb0b7
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5eb0c0
mov dword [ebp], 2
xor edi, edi
mov dword [esp + 0x24], edi
mov ecx, ebp
call fcn.005f3660
mov edi, eax
mov ecx, ebp
call fcn.005f3660
mov dword [esp + 0x104], eax
mov ecx, dword [esp + 0x12c]
test ecx, ecx
je 0x5eb117
nop word cs:[eax + eax]
test eax, eax
je 0x5eb110
mov edx, dword [ecx]
test edx, edx
je 0x5eb110
mov esi, dword [edx + 8]
and esi, 0xfffffffc
or esi, 1
mov dword [edx + 8], esi
mov esi, dword [esp + 0x260]
mov dword [edx + 0xc], eax
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x5eb0f0
movzx ebp, word [esi + 0x1e]
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x6c]
add eax, 4
mov edx, 0x20
mov ecx, esi
push eax
push 0x8d
push 0
push 0xa
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x6c]
add eax, 4
mov edx, 0x20
mov ecx, esi
push 0
push 0xc
push eax
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push 0
push 8
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x88]
test eax, eax
je 0x5eb19a
mov edx, 0x20
mov ecx, esi
push eax
push 0x8d
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov edx, 0x26
mov ecx, esi
push 0x24
push 0x81
push 0
push 2
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0x88], 0
je 0x5eb1d8
mov edx, 0x20
mov ecx, esi
push 0
push 3
push 0x14
push 0x81
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb224
mov edx, 1
mov ecx, esi
push 0x10
push 0x81
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb21f
mov byte [eax], 0x8b
mov edx, 0x11
mov ecx, esi
push 0
push 3
push 4
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb224
or byte [eax + 1], 0x28
jmp 0x5eb224
cmp dword [esi], 0
je 0x5eb1fe
mov dword [esp + 0x18], edi
mov edx, 0x20
mov ecx, esi
push 8
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
xor ebx, ebx
cmp dword [esi], 0
jne 0x5eb37f
mov eax, dword [esi + 0x58]
add eax, dword [esp + 0x6c]
je 0x5eb278
mov edx, 1
mov ecx, esi
push eax
push 0x8d
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb296
mov byte [eax], 0x8d
jmp 0x5eb296
mov edx, 1
mov ecx, esi
push 0
push 0xc
push 0
push 0xd
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb296
mov byte [eax], 0x89
xor ebx, ebx
cmp dword [esi], 0
jne 0x5eb37f
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 0
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb2c0
or byte [eax + 1], 0x38
xor ebx, ebx
cmp dword [esi], 0
jne 0x5eb37f
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eb2e5
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eb30e
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5eb377
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 0x5eb349
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eb370
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eb377
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 0x5eb37f
mov dword [esi], 2
xor ebx, ebx
mov ecx, esi
call fcn.005f3660
mov dword [esp + 0x1c], eax
mov edx, 0x20
mov ecx, esi
push 0
push 0x8c
push 0
push 0xb
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb422
mov edx, 0x11
mov ecx, esi
push 0
push 0xc
push 4
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb422
mov edx, 0x11
mov ecx, esi
push 0
push 3
push 4
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb422
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xb
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb3ff
mov byte [eax], 0x2b
cmp dword [esi], 0
jne 0x5eb422
mov edx, 0x21
mov ecx, esi
push 0
push 0xb
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb422
or byte [eax], 0x38
mov edx, 0x26
mov ecx, esi
push 0
push 0xb
push 0
push 0x83
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb469
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb460
or byte [eax + 1], 0x28
cmp dword [esi], 0
je 0x5eb96e
mov ecx, esi
call fcn.005f3660
test ebx, ebx
je 0x5eb487
test eax, eax
je 0x5eb487
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
test bp, bp
je 0x5eb566
cmp dword [esi], 0
je 0x5eb8ee
add ebp, 2
mov edx, 0x20
mov ecx, esi
push ebp
push 0x40
push 0
push 2
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
mov ebx, eax
mov edx, 0x20
mov ecx, esi
push 0
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
mov ebp, dword [esp + 0x14]
jne 0x5eb54d
mov edx, 0x11
mov ecx, esi
push 0
push 1
push 8
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb4fd
or byte [eax + 1], 0x28
cmp dword [esi], 0
jne 0x5eb54d
mov edx, 0x11
mov ecx, esi
push 0
push 2
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb521
or byte [eax + 1], 0x28
cmp dword [esi], 0
jne 0x5eb54d
mov edx, 1
mov ecx, esi
push 0
push 0xa
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb544
mov byte [eax], 0x3b
cmp dword [esi], 0
je 0x5ec074
mov edx, 0x20
mov ecx, esi
push 0
push 2
push 0
push 1
call fcn.005f26a0
add esp, 0x10
jmp 0x5eb581
mov edx, 0x20
mov ecx, esi
push 1
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov ebp, dword [esp + 0x14]
mov ecx, ebp
call fcn.005f3660
mov dword [esp + 0x100], eax
mov dword [esp + 0xfc], eax
mov ecx, dword [esp + 0x120]
test ecx, ecx
mov ebx, dword [esp + 0x40]
je 0x5eb5d0
nop word cs:[eax + eax]
test eax, eax
je 0x5eb5c9
mov edx, dword [ecx]
test edx, edx
je 0x5eb5c9
mov esi, dword [edx + 8]
and esi, 0xfffffffc
or esi, 1
mov dword [edx + 8], esi
mov dword [edx + 0xc], eax
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x5eb5b0
mov eax, dword [esp + 0x128]
test eax, eax
je 0x5eb610
mov ecx, dword [esp + 0x100]
nop word cs:[eax + eax]
test ecx, ecx
je 0x5eb609
mov edx, dword [eax]
test edx, edx
je 0x5eb609
mov esi, dword [edx + 8]
and esi, 0xfffffffc
or esi, 1
mov dword [edx + 8], esi
mov dword [edx + 0xc], ecx
mov eax, dword [eax + 4]
test eax, eax
jne 0x5eb5f0
mov edx, dword [esp + 0x10]
test edx, edx
je 0x5eb632
mov eax, dword [esp + 0x100]
test eax, eax
je 0x5eb632
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
cmp dword [ebp], 0
je 0x5eb8be
test bl, bl
je 0x5eb89e
mov ecx, dword [esp + 0x14]
call fcn.005f3660
mov dword [esp + 0xf8], eax
mov ecx, dword [esp + 0x11c]
test ecx, ecx
je 0x5eb67f
test eax, eax
je 0x5eb678
mov edx, dword [ecx]
test edx, edx
je 0x5eb678
mov esi, dword [edx + 8]
and esi, 0xfffffffc
or esi, 1
mov dword [edx + 8], esi
mov dword [edx + 0xc], eax
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x5eb65f
mov esi, dword [esp + 0x4c]
mov ebp, dword [esp + 0xfc]
mov edx, 0x20
mov ecx, esi
push 0
push 8
push 0
push 2
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push 0xfffffffffffffff4
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x26
mov ecx, esi
push 0x20
push 0x82
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb6ff
mov edx, 0x11
mov ecx, esi
push 0
push 3
push 2
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb6f6
or byte [eax + 1], 0x38
cmp dword [esi], 0
je 0x5ebb37
test ebp, ebp
setne al
mov dword [esp + 0x10], eax
mov edx, 0x20
mov ecx, esi
push 8
push 0x82
push 0
push 0xc
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, esi
push 0x10
push 0x82
push 0
push 2
call fcn.005f26a0
add esp, 0x10
xor ebx, ebx
cmp dword [esi], 0
jne 0x5eb76d
mov edx, 0x11
mov ecx, esi
push 0
push 3
push 3
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb762
or byte [eax + 1], 0x38
xor ebx, ebx
cmp dword [esi], 0
je 0x5ebb58
mov edx, 0x26
mov ecx, esi
push 0
push 3
push 8
push 0x82
call fcn.005f26a0
add esp, 0x10
mov ecx, esi
call fcn.005f3660
test ebx, ebx
je 0x5eb7a5
test eax, eax
je 0x5eb7a5
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
cmp dword [esp + 0xa8], 2
lea eax, [esp + 0x80]
lea edi, [esp + 0x7c]
cmovne edi, eax
mov edx, 0x20
mov ecx, esi
push dword [edi]
push 0x8d
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb81b
mov edx, 1
mov ecx, esi
push 0
push 0xc
push 0
push 0xb
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb7f8
mov byte [eax], 0x2b
cmp dword [esi], 0
jne 0x5eb81b
mov edx, 0x21
mov ecx, esi
push 0
push 0xb
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb81b
or byte [eax], 0x38
mov edx, 0x26
mov ecx, esi
push 0
push 0xb
push 4
push 0x82
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
jne 0x5eb87b
mov edx, 1
mov ecx, esi
push 0
push 0xc
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb858
mov byte [eax], 0x2b
cmp dword [esi], 0
jne 0x5eb87b
mov edx, 0x21
mov ecx, esi
push 0
push 3
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb87b
or byte [eax], 0x38
mov edx, 0x26
mov ecx, esi
push 0
push 3
push 0
push 0x82
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
je 0x5eb92b
cmp dword [esp + 0xac], 0
je 0x5ebbfc
mov ebp, dword [esp + 0x14]
mov ecx, ebp
call fcn.005f3660
mov esi, eax
jmp 0x5ebc02
test byte [ebp + 4], 1
mov eax, dword [ebp + 0x44]
jne 0x5eb94c
mov edx, 0x11
mov ecx, ebp
push 0
push 0xd
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
jne 0x5eb999
jmp 0x5eb98f
lea eax, [ebp*8]
add eax, dword [esp + 0x6c]
add eax, dword [esi + 0x58]
je 0x5ebab3
mov edx, 1
mov ecx, esi
push eax
push 0x8d
push 0
push 1
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb499
mov byte [eax], 0x8d
jmp 0x5eb499
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eba4b
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eba78
mov edx, 1
mov ecx, ebp
push eax
push 0x8d
push 0
push 0xd
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb98f
mov byte [eax], 0x8b
jmp 0x5eb999
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ebb79
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ebba6
cmp dword [ebp], 0
jne 0x5eb63c
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ebp + 0x34]
cmp eax, 7
lea eax, [eax - 5]
mov edx, 2
cmovg edx, eax
mov eax, dword [ebp + 0x38]
cmp eax, 4
mov esi, 3
cmovl esi, eax
lea eax, [esi + edx]
cmp dword [ebp + 0x54], 2
lea ebx, [esi + edx + 2]
cmovle ebx, eax
mov eax, dword [ecx + 4]
lea edx, [ebx + eax + 1]
cmp edx, 0xff8
ja 0x5eb9e1
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eba0d
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ebd8c
lea ecx, [ebx + 1]
mov esi, dword [esp + 0x28]
mov edx, dword [esi]
mov dword [eax], edx
mov dword [esi], eax
mov dword [eax + 4], ecx
add eax, 8
lea ecx, [ebp + 0x34]
mov byte [eax], bl
add dword [ebp + 0x48], ebx
cmp dword [ebp + 0x38], 0
jg 0x5eba26
mov edx, dword [ecx]
cmp edx, 0xc
jl 0x5ebdaf
mov byte [eax + 1], 0x5b
add eax, 2
cmp dword [ebp + 0x38], 1
mov ebx, dword [esp + 0x40]
jg 0x5ebdb9
mov edx, dword [ecx]
cmp edx, 0xb
jge 0x5ebdb9
jmp 0x5ebdc5
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ebbe8
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], 0x30000
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], 5
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ebada
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ebb05
mov edx, 1
mov ecx, esi
push 0
push 1
push 0
push 0xd
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb499
mov byte [eax], 0x89
jmp 0x5eb499
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ebbe8
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 byte [esp + 0x10], 0
je 0x5eb89e
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov dword [edi + 0xc], ebp
cmp dword [esp + 0xac], 0
jne 0x5eb8ac
jmp 0x5ebbfc
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ebdff
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ebe2c
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ebe6a
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ebe97
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ebda4
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], 0x2000
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 0x5ebd3d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ebd64
mov dword [esi], 2
cmp dword [esp + 0xac], 0
jne 0x5eb8ac
xor esi, esi
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x180]
lea ecx, [esp + 0x4c]
call fcn.005f8fb0
cmp dword [ebp], 0
je 0x5ebcba
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
test eax, eax
je 0x5ebc45
nop word cs:[eax + eax]
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5ebc30
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
test eax, eax
je 0x5ebc65
nop
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5ebc50
sub esp, 0xc
push ebp
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x68]
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x60]
call dword [0x6f447c]
add esp, 0x10
mov eax, dword [esp + 0x58]
test eax, eax
je case.default.0x5e4cd8
nop dword [eax + eax]
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5ebca0
jmp case.default.0x5e4cd8
mov ecx, ebp
call fcn.005f3660
mov dword [esp + 0x168], eax
cmp dword [esp + 0x268], 1
jne 0x5ec146
xor ebx, ebx
cmp dword [ebp], 0
jne 0x5ec0ce
mov eax, dword [ebp + 0x58]
add eax, dword [esp + 0x80]
mov edx, 0x11
mov ecx, ebp
push eax
push 0x8d
push 0
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ebd0d
or byte [eax + 1], 0x38
xor ebx, ebx
cmp dword [ebp], 0
jne 0x5ec0ce
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec00a
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec039
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ebda4
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 [esp + 0x1c], 0
je 0x5eb469
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov eax, dword [esp + 0x1c]
mov dword [edi + 0xc], eax
jmp 0x5eb469
mov dword [ebp], 2
mov ebx, dword [esp + 0x40]
test bl, bl
jne 0x5eb644
jmp 0x5eb89e
mov dword [esi], 2
jmp 0x5eb469
inc eax
mov ebx, dword [esp + 0x40]
cmp edx, 0xb
jl 0x5ebdc5
mov byte [eax], 0x5e
inc eax
cmp dword [ebp + 0x38], 2
jg 0x5ebdca
mov edx, dword [ecx]
cmp edx, 0xa
jl 0x5ebdce
mov byte [eax], 0x5f
inc eax
mov byte [eax], 0x5d
cmp dword [ebp + 0x54], 3
jl 0x5ebdee
mov word [eax + 1], 0x4c2
mov byte [eax + 3], 0
test bl, bl
jne 0x5eb644
jmp 0x5eb89e
mov byte [eax + 1], 0xc3
test bl, bl
jne 0x5eb644
jmp 0x5eb89e
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ebfe5
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], 0xc000
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 0x5ebed2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ebefd
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5ebff0
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], 0xc000
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 0x5ebf20
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ebf4b
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ebfe5
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
test ebp, ebp
je 0x5ebffd
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov dword [edi + 0xc], ebp
mov al, 1
jmp 0x5eb704
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ebff0
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 0x5eb76d
mov eax, dword [esp + 0x80]
add eax, 4
cmp dword [esp + 0xa8], 2
cmove eax, dword [esp + 0x70]
add eax, dword [esi + 0x58]
mov edx, 1
mov ecx, esi
push eax
push 0x8d
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec29f
mov byte [eax], 0x8b
mov edx, 1
mov ecx, esi
push 0
push 0xc
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ebfb5
mov byte [eax], 0x2b
cmp dword [esi], 0
jne 0x5eb76d
mov edx, 0x21
mov ecx, esi
push 0
push 3
push 1
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eb76d
or byte [eax], 0x38
jmp 0x5eb76d
mov dword [esi], 2
jmp 0x5eb6ff
mov dword [esi], 2
xor ebx, ebx
jmp 0x5eb76d
mov dword [esp + 0x10], 0
jmp 0x5eb708
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5ec0c5
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [ebx], eax
mov dword [ecx], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x2000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [ebp + 0x1c], ebx
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ec095
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ec0be
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec2ad
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec2da
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ec0c5
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5ec0ce
mov dword [ebp], 2
xor ebx, ebx
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x7c]
push 0x8d
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0xffffffffffffffff
push 0x40
push dword [esp + 0x84]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push dword [esp + 0x88]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov ecx, ebp
call fcn.005f3660
test ebx, ebx
je 0x5ec146
test eax, eax
je 0x5ec146
mov ecx, dword [ebx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
mov eax, 0x40010
mov ecx, dword [esp + 0x260]
and eax, dword [ecx + 8]
cmp eax, 0x40000
jne 0x5ec17b
mov edx, 0x20
mov ecx, ebp
push dword [esp + 0x84]
push 0x8d
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x94]
test eax, eax
je 0x5ec195
add eax, 2
sub eax, dword [esp + 0x50]
add eax, eax
add eax, dword [esp + 0x54]
jmp 0x5ec199
lea eax, [esp + 0x70]
mov edx, 0x20
mov ecx, ebp
push dword [eax]
push 0x8d
push 0
push 0xc
call fcn.005f26a0
add esp, 0x10
mov eax, dword [esp + 0x260]
mov eax, dword [eax + 8]
test al, 0x10
jne 0x5ec5b8
cmp dword [esp + 0x108], 0
je 0x5ec230
test eax, 0x40000
jne 0x5ec5b8
cmp dword [ebp], 0
jne 0x5ec5b8
mov edx, 1
mov ecx, ebp
push 0
push 0xb
push 0
push 0xc
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec202
mov byte [eax], 0x3b
cmp dword [ebp], 0
jne 0x5ec5b8
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec368
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec397
cmp dword [ebp], 0
jne 0x5ec5b8
test eax, 0x40000
mov eax, 0xb
mov edi, 1
cmove edi, eax
sub esp, 8
mov edx, 0x862
mov ecx, ebp
push 0
push edi
push 0
push 0xc
push 0
push 0
call fcn.005f2d10
add esp, 0x20
test eax, eax
jne 0x5ec5b8
cmp dword [ebp], 0
jne 0x5ec5b8
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec46e
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec49d
cmp dword [esi], 0
jne 0x5eb76d
jmp 0x5ebf97
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ec35d
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 0x5ec315
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ec33c
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ec35d
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
test ebx, ebx
je 0x5eb54d
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov dword [edi + 0xc], ebx
jmp 0x5eb54d
mov dword [esi], 2
jmp 0x5eb54d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ec420
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x4000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebp + 0x1c], edi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ec3d2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ec3fb
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ec420
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp + 0x108]
test eax, eax
je 0x5ec5b8
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
jmp 0x5ec52d
mov dword [ebp], 2
cmp dword [esp + 0x2c], 0
jne 0x5ec5bf
jmp 0x5ec5dd
mov dword [esi], 2
jmp 0x5ea41f
cmp dword [esi], 0
jne 0x5eabff
mov ebp, edi
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec540
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec56d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ec5ad
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x4000
mov edx, dword [esp + 0x14]
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], 6
mov ecx, dword [edx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ec4dc
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ec509
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ec5ad
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp dword [esp + 0x34], 0
mov ebp, dword [esp + 0x14]
je 0x5ec5b8
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov eax, dword [esp + 0x34]
mov dword [edi + 0xc], eax
cmp dword [esp + 0x2c], 0
jne 0x5ec5bf
jmp 0x5ec5dd
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5f1ac3
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]
test eax, eax
cmovne ebp, eax
mov dword [ebp], 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 0x5f1a88
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ea81d
mov ebp, dword [esp + 0x14]
mov dword [ebp], 2
cmp dword [esp + 0x2c], 0
je 0x5ec5dd
mov ecx, ebp
call fcn.005f3660
test eax, eax
je 0x5ec5dd
mov edx, dword [esp + 0x2c]
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
cmp dword [esp + 0x268], 1
jne 0x5ec622
cmp dword [ebp], 0
jne 0x5ec622
mov eax, dword [ebp + 0x58]
add eax, dword [esp + 0x80]
mov edx, 0x11
mov ecx, ebp
push eax
push 0x8d
push 0xffffffffffffffff
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec618
or byte [eax + 1], 0x38
cmp dword [ebp], 0
je 0x5edd95
mov edx, 0x20
mov ecx, ebp
push 0xffffffffffffffff
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
je 0x5edb5c
lea ecx, [esp + 0x4c]
call fcn.005fc4c0
cmp dword [esp + 0xac], 0
je 0x5ec786
mov ebp, dword [esp + 0x14]
mov ecx, ebp
call fcn.005f3660
mov edx, dword [esp + 0x24]
test edx, edx
je 0x5ec680
test eax, eax
je 0x5ec680
mov ecx, dword [edx + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
mov edx, 0x20
mov ecx, ebp
push 0
push 8
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x21
mov ecx, ebp
push 0x2a
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
mov ebx, dword [esp + 0x18]
jne 0x5ec6e4
mov edx, 0x11
mov ecx, ebp
push 0
push 3
push 0
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec6da
or byte [eax + 1], 0x38
cmp dword [ebp], 0
je 0x5edd29
test esi, esi
setne al
mov dword [esp + 0x10], eax
mov edx, 0x21
mov ecx, ebp
push 0x2b
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
jne 0x5ec736
mov edx, 0x11
mov ecx, ebp
push 0
push 3
push 0
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec72c
or byte [eax + 1], 0x38
cmp dword [ebp], 0
je 0x5edd49
test ebx, ebx
setne bl
mov edx, 0x20
mov ecx, ebp
push 4
push 0x81
push 0
push 3
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
jne 0x5ec786
mov edx, 1
mov edi, dword [esp + 0x14]
mov ecx, edi
push 0
push 0xc
push 0
push 3
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ec77d
mov byte [eax], 0x3b
cmp dword [edi], 0
je 0x5edd6d
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x114]
mov dword [esp + 0x118], eax
mov dword [esp + 0xc0], 1
test eax, eax
jne 0x5ecc0c
jmp 0x5eda80
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5eca3e
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x30000
mov eax, dword [ebx + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x24]
mov dword [eax], edi
mov dword [ebx + 0x1c], edi
add dword [ebx + 0x48], 5
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ec841
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ec86c
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eca3e
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
cmp dword [ebx], 0
jne 0x5ed791
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5ec9fd
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eca26
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec8ea
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec919
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eca49
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5eca78
mov dword [ebx], 2
jmp 0x5eda52
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ecbab
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x32000
mov eax, dword [ebx + 0x1c]
test eax, eax
mov ecx, dword [esp + 0x24]
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebx + 0x1c], edi
add dword [ebx + 0x48], 5
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ec955
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ec980
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ecbab
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
cmp dword [ebx], 0
jne 0x5ed826
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 8]
cmp edx, 0x7f8
ja 0x5ecb60
mov dword [esp + 0x24], edx
lea edx, [eax + ecx + 8]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x24]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x138]
mov dword [eax + ecx + 0xc], edx
mov dword [eax + ecx + 8], edi
mov eax, dword [esp + 0x10]
mov dword [esp + 0x138], eax
mov edx, 0x11
mov ecx, ebx
push 0
push 2
push dword [esp + 0x34]
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ed826
or byte [eax + 1], 0x28
jmp 0x5ed826
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5eca3e
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [esp + 0x120]
mov dword [eax + 4], ecx
mov dword [eax], edi
mov dword [esp + 0x120], eax
jmp 0x5ed791
mov dword [ebx], 2
jmp 0x5ed791
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ecc01
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x32000
mov eax, dword [ebx + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x24]
mov dword [eax], edi
mov dword [ebx + 0x1c], edi
add dword [ebx + 0x48], 5
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ecab2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ecadd
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ecc01
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
cmp dword [ebx], 0
jne 0x5ed766
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 8]
cmp edx, 0x7f8
ja 0x5ecbb6
mov dword [esp + 0x174], edx
lea edx, [eax + ecx + 8]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x174]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x138]
mov dword [eax + ecx + 0xc], edx
mov dword [eax + ecx + 8], edi
mov eax, dword [esp + 0x40]
mov dword [esp + 0x138], eax
mov edx, 0x11
mov ecx, ebx
push 0
push 2
push dword [esp + 0x3c]
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ed766
or byte [eax + 1], 0x28
jmp 0x5ed766
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ecbab
mov ecx, dword [ebx + 0x30]
mov dword [eax], ecx
mov dword [ebx + 0x30], eax
mov dword [eax + 4], 8
mov ecx, eax
add ecx, 8
cmp dword [ebx], 0
mov edx, dword [esp + 0x138]
mov dword [eax + 0xc], edx
mov dword [eax + 8], edi
mov dword [esp + 0x138], ecx
jne 0x5ed826
jmp 0x5ec9d3
mov dword [ebx], 2
jmp 0x5ed826
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ecc01
mov ecx, dword [ebx + 0x30]
mov dword [eax], ecx
mov dword [ebx + 0x30], eax
mov dword [eax + 4], 8
mov ecx, eax
add ecx, 8
mov edx, dword [esp + 0x138]
cmp dword [ebx], 0
mov dword [eax + 0xc], edx
mov dword [eax + 8], edi
mov dword [esp + 0x138], ecx
jne 0x5ed766
jmp 0x5ecb36
mov dword [ebx], 2
jmp 0x5ed766
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov eax, dword [eax + 0xc]
lea edx, [ecx + eax*2]
movzx eax, word [ecx + eax*2]
mov ebp, edx
movzx ecx, word [ebp + 2]
movzx esi, word [ebp + ecx*2]
lea ebp, [ebp + ecx*2]
cmp esi, 0x77
je 0x5ecc20
mov dword [esp + 0x48], edi
movzx eax, ax
xor ecx, ecx
cmp eax, 0x83
setne cl
lea edi, [edx + ecx*2 + 4]
sub esp, 4
lea ecx, [esp + 0x50]
mov dword [esp + 0x38], edx
lea eax, [esp + 0x174]
push eax
push 1
push 0
call fcn.0061a5e0
add esp, 0x10
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x170]
mov dword [esp + 0x30], eax
cmp eax, 1
mov eax, 3
sbb eax, 0
cmp edi, ebp
mov dword [esp + 0x18], edi
jae 0x5eccac
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x15c]
mov dword [esp + 0x10], edx
mov edx, edi
mov edi, eax
jmp 0x5ecd90
mov edi, eax
jmp 0x5eceac
lea ecx, [esp + 0x4c]
call fcn.005fd430
jmp 0x5ecea0
movzx eax, word [edx + 2]
lea eax, [edx + eax*2]
mov ecx, esi
sub edx, ecx
cmp dword [ebx + edx*2], 0
je 0x5ecea2
movzx ecx, word [eax]
mov dword [esp + 0x1c], ecx
lea edx, [ecx - 0x62]
movzx ecx, dx
cmp ecx, 7
ja 0x5ecd64
mov ecx, 0x3a
bt ecx, edx
jae 0x5ecd34
mov edx, 1
jmp 0x5ecd66
mov eax, edx
mov ecx, esi
sub eax, ecx
cmp dword [ebx + eax*2], 0
je 0x5ecd11
inc edi
lea eax, [edx + 2]
sub eax, ecx
mov eax, dword [ebx + eax*2]
lea edx, [edx + eax*2]
add edx, 4
mov eax, edx
jmp 0x5ecea2
movzx eax, word [edx + 2]
movzx eax, word [edx + eax*2]
add eax, 0xffffff87
movzx eax, ax
cmp eax, 2
adc edi, 0
jmp 0x5ecde9
mov ecx, 5
bt ecx, edx
mov edx, 2
mov ecx, esi
jb 0x5ecd68
movzx edx, word [eax + 4]
test edx, edx
je 0x5ecd6f
mov ecx, edx
movzx edx, word [eax + 2]
sub ecx, edx
mov edx, ecx
cmp edx, 2
mov ecx, 2
cmovae edx, ecx
jmp 0x5ecd66
xor edx, edx
mov ecx, esi
add edi, edx
jmp 0x5ecea2
movzx edx, word [esp + 0x1c]
cmp edx, 0x68
mov edx, 0
sete dl
inc edx
add edi, edx
jmp 0x5ecea2
mov esi, ecx
movzx eax, word [edx]
add eax, 0xffffffdf
movzx ecx, ax
cmp ecx, 0x6b
ja case.0x5ecda9.8
mov eax, 0x11
jmp dword [ecx*4 + 0x5f2290]
mov eax, edx
mov ecx, esi
sub eax, ecx
cmp dword [ebx + eax*2], 1
sbb edi, 0xffffffff
lea eax, [edx + 4]
cmp dword [esp + 0x10], 0
je 0x5ecea2
movzx ecx, word [edx + 2]
and ecx, 0xfc00
add edx, 6
cmp ecx, 0xd800
mov ecx, esi
cmove eax, edx
jmp 0x5ecea2
inc edi
add edx, 4
jmp 0x5ece9e
mov eax, edx
sub eax, esi
lea ecx, [edi + 2]
cmp dword [ebx + eax*2], 0
cmovne edi, ecx
lea eax, [edx + 4]
cmp dword [esp + 0x10], 0
je 0x5ecea0
movzx ecx, word [edx + 2]
and ecx, 0xfc00
add edx, 6
jmp 0x5ece41
mov eax, edx
sub eax, esi
lea ecx, [edi + 2]
cmp dword [ebx + eax*2], 0
cmovne edi, ecx
lea eax, [edx + 6]
cmp dword [esp + 0x10], 0
je 0x5ecea0
movzx ecx, word [edx + 4]
and ecx, 0xfc00
add edx, 8
cmp ecx, 0xd800
cmove eax, edx
jmp 0x5ecea0
mov eax, edx
mov ecx, esi
sub eax, ecx
cmp dword [ebx + eax*2], 1
sbb edi, 0xffffffff
jmp 0x5ece6b
mov eax, edx
sub eax, esi
lea ecx, [edi + 2]
cmp dword [ebx + eax*2], 0
cmovne edi, ecx
mov ecx, esi
add edx, 2
mov eax, edx
jmp 0x5ecea2
mov eax, edx
sub eax, esi
lea ecx, [edi + 2]
cmp dword [ebx + eax*2], 0
cmovne edi, ecx
mov ecx, esi
jmp 0x5ecd11
movzx eax, word [edx + 4]
mov ecx, dword [esp + 0x24]
cmp byte [ecx + eax], 1
adc edi, 0
jmp 0x5ece9b
add edi, 2
add edx, 6
mov eax, edx
mov ecx, esi
cmp eax, ebp
mov edx, eax
jb 0x5ecd90
mov dword [esp + 0x1c], edi
mov dword [esp + 0x64], 0
mov ecx, dword [esp + 0x2c]
test ecx, ecx
mov eax, 0
cmovns eax, ecx
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0x34]
movzx eax, word [ecx + 2]
movzx eax, word [ecx + eax*2]
mov dword [esp + 0x24], eax
cmp eax, 0x77
sete byte [esp + 0x10]
mov esi, dword [esp + 0x48]
mov ecx, esi
call fcn.005f3660
mov ecx, dword [esp + 0x118]
mov dword [ecx + 4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x5ecf20
nop
test eax, eax
je 0x5ecf19
mov edx, dword [ecx]
test edx, edx
je 0x5ecf19
mov edi, dword [edx + 8]
and edi, 0xfffffffc
or edi, 1
mov dword [edx + 8], edi
mov dword [edx + 0xc], eax
mov ecx, dword [ecx + 4]
test ecx, ecx
jne 0x5ecf00
cmp dword [esi], 0
jne 0x5ecf74
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ecf3f
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ecf6a
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed08c
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov byte [eax], 1
inc dword [esi + 0x48]
mov byte [eax + 1], 0x59
xor ebx, ebx
mov al, byte [esp + 0x10]
mov bl, al
mov edi, dword [esp + 0x4c]
sub esp, 8
mov edx, 0x262
mov ecx, edi
push 1
push 0x40
push 0
push 9
push 0
push 9
call fcn.005f2d10
add esp, 0x20
cmp dword [edi], 0
mov dword [esp + 0x10], ebx
jne 0x5ed0dd
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ecfc5
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ecff2
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5ed0d3
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ed031
mov dword [esp + 0x38], ebx
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ed060
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed0d3
mov dword [esp + 0x38], ebx
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 ebx, dword [esp + 0x10]
jne 0x5ed0dd
mov ecx, dword [edi + 0x30]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
mov ebx, dword [esp + 0x38]
ja 0x5ed097
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ed0be
mov dword [esi], 2
jmp 0x5ecf74
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed0d3
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 [esp + 0x130]
mov dword [eax + 4], ecx
mov dword [eax], ebx
mov dword [esp + 0x130], eax
jmp 0x5ed0d9
mov dword [edi], 2
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0xc]
add eax, ebx
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 0x4c]
xor ebx, ebx
cmp dword [edi], 0
jne 0x5ed20b
mov eax, dword [esp + 0x1c]
lea eax, [eax*4]
mov edx, 0x11
mov ecx, edi
push 0
push 2
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ed123
or byte [eax + 1], 0x28
xor ebx, ebx
cmp dword [edi], 0
jne 0x5ed20b
mov edx, 1
mov ecx, edi
push 0
push 0xa
push 0
push 2
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ed14c
mov byte [eax], 0x3b
xor ebx, ebx
cmp dword [edi], 0
jne 0x5ed20b
mov eax, dword [edi + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ed171
lea ebx, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ed19a
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov ebx, eax
test ebx, ebx
je 0x5ed203
mov eax, dword [edi + 0x30]
mov dword [ebx], eax
mov dword [edi + 0x30], ebx
mov dword [ebx + 4], 0x10
add ebx, 8
mov dword [ebx], 0
mov dword [ebx + 8], 0x4000
mov eax, dword [edi + 0x1c]
lea ecx, [edi + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], ebx
mov dword [edi + 0x1c], ebx
add dword [edi + 0x48], 6
mov ecx, dword [edi + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ed1d5
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ed1fc
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed203
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 0x5ed20b
mov dword [edi], 2
xor ebx, ebx
mov edi, dword [esp + 0x4c]
cmp dword [edi], 0
jne 0x5ed280
mov dword [esp + 0x38], ebx
mov ebx, dword [edi + 0x30]
mov ecx, dword [ebx + 4]
lea edx, [ecx + 0xc]
cmp edx, 0x7f8
ja 0x5ed232
lea eax, [ebx + ecx + 8]
mov dword [ebx + 4], edx
jmp 0x5ed25d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed634
mov ecx, dword [edi + 0x30]
mov dword [eax], ecx
mov dword [edi + 0x30], eax
mov dword [eax + 4], 0xc
add eax, 8
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
mov ebx, eax
mov ecx, edi
call fcn.005f3660
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x10c]
mov dword [ebx + 8], eax
mov dword [esp + 0x10c], ebx
mov eax, dword [esp + 0x1c]
lea eax, [eax*4 - 4]
mov edx, 0x20
mov ebx, esi
mov ecx, ebx
push 0
push 3
push eax
push 0x82
call fcn.005f26a0
add esp, 0x10
mov esi, dword [esp + 0xc]
add esi, dword [esp + 0x10]
sub esp, 0xc
lea ecx, [esp + 0x58]
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x3c]
push edi
push dword [esp + 0x2c]
mov eax, esi
mov dword [esp + 0x20], eax
push esi
push 1
push ebp
call fcn.00625020
add esp, 0x20
test edi, edi
je 0x5ed2f7
mov edx, 0x20
mov ecx, ebx
push 0
push 0x40
push dword [esp + 0x94]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0
push 2
push dword [esp + 0x80]
push 0x8d
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0x2c], 0
mov esi, dword [esp + 0x34]
js 0x5ed33c
mov eax, dword [esp + 0xc]
dec eax
sub esp, 4
lea ecx, [esp + 0x50]
mov edx, esi
push 1
push eax
push 0
call fcn.0061aa70
add esp, 0x10
movzx eax, word [esp + 0x24]
cmp eax, 0x77
mov edi, dword [esp + 0x18]
jne 0x5ed364
mov edx, 0x20
mov ecx, ebx
push 0
push 0xc
push 0
push 0x82
call fcn.005f26a0
add esp, 0x10
lea eax, [esi + 2]
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx*4]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x19c], 0
mov dword [esp + 0x198], 0
mov dword [esp + 0x194], 0
mov dword [esp + 0x190], 0
mov dword [esp + 0x18c], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x12c], 0
lea ecx, [ebx + 0x30]
mov dword [esp + 0x10], ecx
lea ecx, [ebx + 0xc]
mov dword [esp + 0x24], ecx
mov ecx, edi
jmp 0x5ed406
movzx eax, word [esi]
cmp eax, 0x77
mov edi, dword [esp + 0x18]
jne 0x5ed5f5
lea eax, [esi + 2]
lea ecx, [esi + 4]
mov dword [esp + 0x19c], ecx
movzx eax, word [eax]
lea esi, [esi + eax*2]
mov dword [esp + 0x194], 0
mov dword [esp + 0x198], 0
cmp ecx, edi
mov edx, edi
je 0x5ed450
mov edx, 0x20
mov ecx, ebx
push 0
push 0x82
push 0
push 0xc
call fcn.005f26a0
add esp, 0x10
mov edx, dword [esp + 0x19c]
sub esp, 8
lea ecx, [esp + 0x54]
lea eax, [esp + 0x194]
push eax
push esi
call fcn.005f3740
add esp, 0x10
cmp dword [ebx], 0
jne 0x5eda52
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ed490
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ed4bf
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ed590
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x30000
mov eax, dword [ebx + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x24]
mov dword [eax], edi
mov dword [ebx + 0x1c], edi
add dword [ebx + 0x48], 5
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ed500
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ed527
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed590
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
cmp dword [ebx], 0
jne 0x5ed596
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 8]
cmp edx, 0x7f8
ja 0x5ed54e
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ed577
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed590
mov edx, dword [esp + 0x10]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 8
add eax, 8
mov ecx, dword [esp + 0x12c]
mov dword [eax + 4], ecx
mov dword [eax], edi
mov dword [esp + 0x12c], eax
jmp 0x5ed596
mov dword [ebx], 2
mov edx, dword [esp + 0x194]
lea ecx, [esp + 0x4c]
call fcn.005f8fb0
cmp dword [ebx], 0
jne 0x5eda52
mov edi, dword [esp + 0x198]
mov ecx, ebx
call fcn.005f3660
test edi, edi
je 0x5ed3f0
nop word cs:[eax + eax]
test eax, eax
je 0x5ed5e9
mov ecx, dword [edi]
test ecx, ecx
je 0x5ed5e9
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 0x5ed5d0
jmp 0x5ed3f0
mov edx, 0x20
mov ecx, ebx
push 0
push 0x40
push 0
push 4
call fcn.005f26a0
add esp, 0x10
xor esi, esi
cmp dword [ebx], 0
jne 0x5ed6da
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ed63f
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ed66a
mov dword [edi], 2
jmp 0x5ed280
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5ed6d2
mov ecx, dword [esp + 0x10]
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 [ebx + 0x1c]
test eax, eax
cmove eax, dword [esp + 0x24]
mov dword [eax], esi
mov dword [ebx + 0x1c], esi
add dword [ebx + 0x48], 5
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ed6a4
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ed6cb
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ed6d2
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 0x5ed6da
mov dword [ebx], 2
xor esi, esi
mov edi, dword [esp + 0x120]
test edi, edi
je 0x5ed791
mov ecx, ebx
call fcn.005f3660
test eax, eax
je 0x5ed709
mov ecx, dword [edi]
test ecx, ecx
je 0x5ed709
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 0x5ed6f0
mov edx, 0x20
mov ecx, ebx
push dword [esp + 0x78]
push 0x8d
push 0
push 2
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0x2c], 0
js 0x5ed766
cmp dword [ebx], 0
jne 0x5ed766
mov eax, dword [esp + 0xc]
lea eax, [eax*4]
mov edx, 0x11
mov ecx, ebx
push 0
push 2
mov dword [esp + 0x3c], eax
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [ebx], 0
je 0x5ec8bb
mov edx, 0x20
mov ecx, ebx
push 0
push 0x40
push 0
push 4
call fcn.005f26a0
add esp, 0x10
mov dword [esp + 0x120], 0
cmp dword [ebx], 0
je 0x5ed9f9
mov edi, dword [esp + 0x12c]
mov ecx, ebx
call fcn.005f3660
test edi, edi
je 0x5ed7d0
nop word cs:[eax + eax]
test eax, eax
je 0x5ed7c9
mov ecx, dword [edi]
test ecx, ecx
je 0x5ed7c9
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 0x5ed7b0
mov edx, 0x20
mov ecx, ebx
push dword [esp + 0x78]
push 0x8d
push 0
push 2
call fcn.005f26a0
add esp, 0x10
cmp dword [esp + 0x2c], 0
js 0x5ed826
cmp dword [ebx], 0
jne 0x5ed826
mov eax, dword [esp + 0xc]
lea eax, [eax*4]
mov edx, 0x11
mov ecx, ebx
push 0
push 2
mov dword [esp + 0x34], eax
push eax
push 0x40
call fcn.005fdd90
add esp, 0x10
cmp dword [ebx], 0
je 0x5ec89e
mov edx, 0x20
mov ecx, ebx
push 1
push 0x40
push 0
push 4
call fcn.005f26a0
add esp, 0x10
mov ecx, ebx
call fcn.005f3660
test esi, esi
je 0x5ed85b
test eax, eax
je 0x5ed85b
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov esi, dword [esp + 0x120]
test esi, esi
mov edi, dword [esp + 0x18]
je 0x5ed8a0
mov ecx, ebx
call fcn.005f3660
nop word cs:[eax + eax]
test eax, eax
je 0x5ed899
mov ecx, dword [esi]
test ecx, ecx
je 0x5ed899
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 0x5ed880
sub esp, 0xc
lea ecx, [esp + 0x58]
mov edx, edi
mov esi, dword [esp + 0x3c]
push esi
push dword [esp + 0x2c]
push dword [esp + 0x20]
push 0
push ebp
call fcn.00625020
add esp, 0x20
mov ecx, dword [esp + 0x4c]
cmp dword [ecx], 0
jne 0x5ed8e1
mov edx, 0x11
push 0
push 2
push dword [esp + 0x40]
push 0x40
call fcn.005fdd90
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
test esi, esi
je 0x5ed968
push 0xfffffffffffffff4
push 0x82
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0xfffffffffffffff8
push 0x82
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0
push 1
push dword [esp + 0x80]
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0
push 4
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0
push 3
push dword [esp + 0x94]
push 0x8d
jmp 0x5ed9a9
push 0xfffffffffffffff8
push 0x82
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0
push 4
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebx
push 0
push 3
push dword [esp + 0x80]
push 0x8d
call fcn.005f26a0
add esp, 0x10
cmp dword [ebx], 0
jne 0x5eda52
mov edx, 1
mov ecx, ebx
push 0xfffffffffffffffc
push 0x82
push 0
push 0
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eda52
mov byte [eax], 0xff
or byte [eax + 1], 0x30
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5eda1d
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5eda48
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ec7d8
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ec807
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ec8df
mov ecx, dword [ebx + 0x2c]
mov dword [eax], ecx
mov dword [ebx + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
mov byte [eax], 1
inc dword [ebx + 0x48]
mov byte [eax + 1], 0xc3
mov edi, dword [esp + 0x14]
cmp dword [edi], 0
jne 0x5edb80
lea ecx, [esp + 0x4c]
call fcn.005fc4c0
mov eax, dword [esp + 0x118]
mov eax, dword [eax]
mov dword [esp + 0x118], eax
test eax, eax
jne 0x5ecc0c
mov dword [esp + 0xc0], 0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xfc], eax
mov esi, dword [esp + 0x134]
mov ebp, dword [esp + 0x14]
mov ecx, ebp
call fcn.005f3660
test esi, esi
je 0x5edacc
test eax, eax
je 0x5edac5
mov ecx, dword [esi]
test ecx, ecx
je 0x5edac5
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 0x5edaac
cmp dword [ebp], 0
jne 0x5edaf4
mov edx, 1
mov ecx, ebp
push dword [ebp + 0x58]
push 0x8d
push 0
push 0
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5edaf4
mov byte [eax], 0x8f
mov edx, 0x20
mov ecx, ebp
push 0
push 2
push 4
push 0x8d
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 8
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
jne 0x5ee127
mov edx, 1
mov ecx, ebp
push 0xffffe000
push 0x8a
push 0
push 2
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5edcd2
mov byte [eax], 0x8d
jmp 0x5ee127
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5edc0b
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5edc3a
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
test eax, eax
je 0x5edb9f
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5edb8a
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
test eax, eax
je 0x5edbbe
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5edba9
sub esp, 0xc
push edi
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x68]
call dword [0x6f447c]
add esp, 4
push dword [esp + 0x60]
call dword [0x6f447c]
add esp, 0x10
mov eax, dword [esp + 0x58]
test eax, eax
je case.default.0x5e4cd8
mov esi, dword [eax]
sub esp, 0xc
push eax
call dword [0x6f447c]
add esp, 0x10
test esi, esi
mov eax, esi
jne 0x5edbf1
jmp case.default.0x5e4cd8
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5edcc6
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x30000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebp + 0x1c], edi
add dword [ebp + 0x48], 5
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5edc75
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5edc9e
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5edcc6
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x5ec643
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
jmp 0x5ec643
mov dword [ebp], 2
jmp 0x5ec643
cmp dword [ebp], 4
jne 0x5ee127
mov edx, 1
mov ecx, ebp
push 0
push 2
push 0
push 0xa
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ee11d
mov byte [eax], 0x89
mov edx, 0x11
mov ecx, ebp
push 0
push 2
push 0x2000
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ee127
or byte [eax + 1], 0x28
jmp 0x5ee127
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5eddb9
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5edde8
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ede2a
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ede59
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ede9b
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
mov ecx, dword [esp + 0x14]
jmp 0x5edece
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ee02a
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ee059
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ee094
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x2000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebp + 0x1c], edi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5edf10
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5edf3d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ee0a0
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebp + 0x1c], edi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5edf60
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5edf8d
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
mov ecx, dword [esp + 0x14]
je 0x5ef099
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
mov dword [edi], eax
mov dword [edx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x2000
mov eax, dword [ecx + 0x1c]
lea ebp, [ecx + 0xc]
test eax, eax
cmove eax, ebp
mov dword [eax], edi
mov dword [ecx + 0x1c], edi
add dword [ecx + 0x48], 6
mov ecx, dword [ecx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5edfb0
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5edfdd
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee094
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
test esi, esi
je 0x5ee109
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov dword [edi + 0xc], esi
mov al, 1
jmp 0x5ec6e9
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee0a0
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
test ebx, ebx
je 0x5ee116
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov dword [edi + 0xc], ebx
mov bl, 1
jmp 0x5ec73b
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ef250
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
test bl, bl
je 0x5edff9
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov eax, dword [esp + 0x18]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x14]
cmp dword [eax], 0
jne 0x5ec786
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ef129
lea edi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ef158
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ee0fd
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x2000
mov eax, dword [ebp + 0x1c]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], edi
mov dword [ebp + 0x1c], edi
add dword [ebp + 0x48], 6
mov ecx, dword [ebp + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ee0ac
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ee0d5
mov dword [ebp], 2
jmp 0x5ec6e4
mov dword [ebp], 2
jmp 0x5ec736
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee0fd
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x5ec622
mov ecx, dword [edi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
jmp 0x5ec622
mov dword [ebp], 2
jmp 0x5ec622
mov dword [esp + 0x10], 0
jmp 0x5ec6ed
xor ebx, ebx
jmp 0x5ec73b
cmp dword [ebp], 0
je 0x5edcfe
mov edx, 0x20
mov ecx, ebp
push 0
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 3
push 0
push 0xa
call fcn.005f26a0
add esp, 4
mov edx, 0x111
mov ecx, ebp
push 0x5fcc60
call fcn.005fc750
add esp, 0x10
xor esi, esi
cmp dword [ebp], 0
jne 0x5ee25f
mov edx, 0x11
mov ecx, ebp
push 0
push 1
push 0
push 0x40
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ee197
or byte [eax + 1], 0x38
xor esi, esi
cmp dword [ebp], 0
jne 0x5ee25f
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ee1c0
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ee1eb
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5ee256
mov ecx, dword [esp + 0x20]
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]
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 0x5ee226
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ee24f
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee256
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
jmp 0x5ee25f
mov dword [ebp], 2
xor esi, esi
mov edx, 0x20
mov ecx, ebp
push 0
push 0xa
push 0
push 3
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 1
push 0
push 0xa
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 0
push 0x8d
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, ebp
push 4
push 0x8d
push 0
push 2
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
jne 0x5ee31e
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
lea edx, [eax + 3]
cmp edx, 0xff8
ja 0x5ee2e4
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ee311
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee7f2
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 3
add eax, 8
mov byte [eax], 2
add dword [ebp + 0x48], 2
mov word [eax + 1], 0xc350
mov ecx, ebp
call fcn.005f3660
test esi, esi
je 0x5ee33c
test eax, eax
je 0x5ee33c
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov edx, 0x20
mov ecx, ebp
push 0xffffffffffffffe5
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
je 0x5ee583
mov esi, dword [esp + 0x130]
mov ecx, ebp
call fcn.005f3660
test esi, esi
je 0x5ee38f
test eax, eax
je 0x5ee388
mov ecx, dword [esi]
test ecx, ecx
je 0x5ee388
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 0x5ee36f
mov edx, 0x20
mov ecx, ebp
push 0xfffffffffffffff8
push 0x40
push 0
push 1
call fcn.005f26a0
add esp, 0x10
cmp dword [ebp], 0
je 0x5ee5a3
mov esi, dword [esp + 0x138]
test esi, esi
je 0x5eeba1
mov ecx, ebp
call fcn.005f3660
test eax, eax
je 0x5ee3df
mov ecx, dword [esi]
test ecx, ecx
je 0x5ee3df
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 0x5ee3c6
mov esi, dword [esp + 0x4c]
cmp dword [esi], 0
jne 0x5ee42b
lea eax, [esi + 0x58]
lea ecx, [esi + 0x5c]
cmp dword [esi + 0x34], 5
cmovl ecx, eax
mov eax, 0xffffffec
mov edi, 0xfffffff8
cmovl edi, eax
add edi, dword [ecx]
mov edx, 1
mov ecx, esi
push edi
push 0x8d
push 0
push 0
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5ee42b
mov byte [eax], 0x8f
mov edx, 0x20
mov ecx, esi
push 0
push 2
push 0
push 4
call fcn.005f26a0
add esp, 0x10
cmp dword [esi], 0
je 0x5ee5c7
mov ecx, esi
call fcn.005f3660
mov edi, eax
mov edx, 0x20
mov ecx, esi
push 0xfffffffffffffffc
push 0x82
push 0
push 3
call fcn.005f26a0
add esp, 0x10
xor ebx, ebx
cmp dword [esi], 0
jne 0x5ee49f
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ee5fb
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ee62a
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5ee668
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5ee697
mov eax, dword [esi + 0x58]
mov edx, 1
mov ecx, esi
test eax, eax
je 0x5ee7b1
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5ee778
mov ecx, dword [esp + 0x20]
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]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], 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 0x5ee6d2
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ee6ff
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5ee784
mov ecx, dword [esp + 0x20]
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]
lea ecx, [ebp + 0xc]
test eax, eax
cmovne ecx, eax
mov dword [ecx], 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 0x5ee727
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ee750
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee778
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x5ee35d
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp 0x5ee35d
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ee784
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
test eax, eax
je 0x5ee3b0
mov ecx, dword [esi + 8]
and ecx, 0xfffffffc
or ecx, 1
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
jmp 0x5ee3b0
mov dword [ebp], 2
jmp 0x5ee35d
mov dword [ebp], 2
jmp 0x5ee3b0
mov dword [ebp], 2
jmp 0x5ee31e
mov esi, dword [esp + 0x13c]
test esi, esi
je 0x5ef80d
mov ecx, ebp
call fcn.005f3660
test eax, eax
je 0x5eebd0
mov ecx, dword [esi]
test ecx, ecx
je 0x5eebd0
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 0x5eebb7
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x18c], 0
cmp dword [edi], 0
jne 0x5eec0d
mov edx, 1
mov ecx, edi
push dword [edi + 0x58]
push 0x8d
push 0
push 0
call fcn.005fdd90
add esp, 0x10
test eax, eax
je 0x5eec0d
mov edx, 0x20
mov ecx, edi
push 0
push 8
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 8
push 0x81
push 0
push 1
call fcn.005f26a0
add esp, 0x10
mov edx, 0x20
mov ecx, edi
push 0
push 0x40
push 4
push 0x8d
call fcn.005f26a0
add esp, 0x10
xor esi, esi
cmp dword [edi], 0
jne 0x5eee3b
mov dword [ecx], 2
jmp 0x5ec786
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov edi, eax
test edi, edi
je 0x5ef250
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], edi
mov dword [edi + 4], 0x10
add edi, 8
mov dword [edi], 0
mov dword [edi + 8], 0x30000
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x1c]
test eax, eax
cmovne ebp, eax
mov dword [ebp], edi
mov dword [ecx + 0x1c], edi
add dword [ecx + 0x48], 5
mov ecx, dword [ecx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5ef203
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5ef22c
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5ef250
mov edx, dword [esp + 0x28]
mov ecx, dword [edx]
mov dword [eax], ecx
mov dword [edx], eax
mov dword [eax + 4], 2
add eax, 8
mov word [eax], pe_nt_image_headers32
cmp byte [esp + 0x10], 0
je 0x5ec786
mov eax, dword [edi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [edi + 8], eax
mov dword [edi + 0xc], esi
jmp 0x5ec786
mov eax, dword [esp + 0x14]
mov dword [eax], 2
jmp 0x5ec786
mov esi, dword [esp + 0x140]
test esi, esi
je 0x5efa52
mov ecx, ebp
call fcn.005f3660
test eax, eax
je 0x5ef83c
mov ecx, dword [esi]
test ecx, ecx
je 0x5ef83c
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 0x5ef823
mov esi, dword [esp + 0x4c]
cmp dword [esi], 0
jne 0x5ef8d4
mov esi, dword [esp + 0x144]
test esi, esi
je 0x5efed4
mov ecx, ebp
call fcn.005f3660
test eax, eax
je 0x5efa81
mov ecx, dword [esi]
test ecx, ecx
je 0x5efa81
mov esi, dword [esi + 4]
test esi, esi
jne 0x5efa68
mov esi, dword [esp + 0x148]
test esi, esi
je 0x5f0128
mov ecx, ebp
call fcn.005f3660
test eax, eax
je 0x5eff03
mov esi, dword [esp + 0x14c]
test esi, esi
je 0x5f0344
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5f1ac3
mov ecx, dword [esi + 0x2c]
mov dword [eax], ecx
mov dword [esi + 0x2c], eax
mov dword [eax + 4], 2
add eax, 8
jmp 0x5ea81d
mov dword [esi], 2
jmp 0x5eabff
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5f1e35
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 0x2c]
mov dword [eax], ecx
mov dword [edx + 0x2c], eax
mov dword [eax + 4], 6
add eax, 8
mov byte [eax], 5
mov ecx, dword [esp + 0xc]
add dword [ecx + 0x48], 5
mov byte [eax + 1], 0x3d
mov dword [eax + 2], esi
mov ecx, dword [esp + 0xc]
cmp dword [ecx], 0
jne 0x5e97db
mov eax, dword [ecx + 0x30]
mov ecx, dword [eax + 4]
lea edx, [ecx + 0x10]
cmp edx, 0x7f8
ja 0x5f1d70
lea esi, [eax + ecx + 8]
mov dword [eax + 4], edx
jmp 0x5f1da1
sub esp, 0xc
push 0x800
call dword [0x6f4478]
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5f1e35
mov ecx, dword [esp + 0xc]
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], 0x2000
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x1c]
test eax, eax
cmovne ebp, eax
mov dword [ebp], esi
mov dword [ecx + 0x1c], esi
add dword [ecx + 0x48], 6
mov ecx, dword [ecx + 0x2c]
mov eax, dword [ecx + 4]
lea edx, [eax + 2]
cmp edx, 0xff8
ja 0x5f1dde
lea eax, [ecx + eax + 8]
mov dword [ecx + 4], edx
jmp 0x5f1e09
sub esp, 0xc
push 0x1000
call dword [0x6f4478]
add esp, 0x10
test eax, eax
je 0x5f1e35
mov edx, dword [esp + 0xc]
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
cmp byte [esp + 0x18], 0
mov ecx, dword [esp + 0xc]
je 0x5e97db
mov eax, dword [esi + 8]
and eax, 0xfffffffc
or eax, 1
mov dword [esi + 8], eax
mov eax, dword [esp + 0x30]
mov dword [esi + 0xc], eax
jmp 0x5e97db
mov ecx, dword [esp + 0xc]
mov dword [ecx], 2
jmp 0x5e97db