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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x140]
cmp eax, dword [ecx + 8]
jbe 0x78743d
sub esp, 0x1c0
mov eax, dword [esp + 0x1c4]
test byte [eax], al
mov ecx, dword [eax + 0x1044]
test ecx, ecx
je 0x787374
mov edx, dword [esp + 0x1c8]
cmp edx, 6
jge 0x7863f7
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f6e8]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
shl ecx, 1
add ecx, 4
cmp ecx, edx
jl 0x7863d6
mov ecx, edx
sar edx, 0x1f
shr edx, 0x1f
add edx, ecx
sar edx, 1
shl edx, 1
cmp edx, ecx
jne 0x7863d6
lea edx, [eax + 0x32d0]
test byte [edx], al
cmp ecx, 0x80
ja 0x787436
mov dword [esp + 0x1b8], edx
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], pe_nt_image_headers32
call fcn.00783d20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x78735f
mov ecx, dword [esp + 0x1c4]
movzx edx, byte [ecx + 0x32d0]
mov ebx, edx
shl edx, 1
lea ebp, [edx + 4]
mov eax, edx
mov edx, dword [esp + 0x1c8]
cmp edx, ebp
jne 0x78733e
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
xor edx, edx
xor ebp, ebp
jmp 0x7865f3
add ebx, 0xc
mov dword [esp + 0x4c], edx
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x1c4]
movzx edx, byte [esp + 0x23]
movzx ecx, byte [ebx + 8]
cmp cl, dl
jne 0x7866d3
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x4c]
inc edx
cmp edx, ebp
jl 0x7864a5
test ecx, ecx
jl 0x7866b2
cmp esi, 4
jae 0x787421
lea edx, [esi + esi*2]
mov byte [esp + edx + 0x98], cl
xor ebx, ebx
jmp 0x7864f5
inc ebx
cmp ebx, esi
jge 0x786534
cmp ebx, 4
jae 0x78741a
lea ebp, [ebx + ebx*2]
movzx ebp, byte [esp + ebp + 0x98]
xchg ebp, eax
cmp cl, al
xchg ebp, eax
jne 0x7864f4
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f708]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
cmp ecx, 4
jae 0x787413
lea ecx, [ecx + ecx*2]
mov ebx, dword [esp + 0x1c4]
mov ebp, dword [ebx + ecx*4 + 0x1050]
mov ecx, dword [ebx + ecx*4 + 0x1054]
imul ecx, ebp
mov ebp, dword [esp + 0x30]
add ecx, ebp
mov dword [esp + 0x30], ecx
mov ebp, dword [esp + 0x8c]
lea ecx, [ebp + 2]
cmp ecx, 0x80
jae 0x78740c
movzx ecx, byte [ebp + ebx + 0x32d2]
shr cl, 4
mov byte [esp + edx + 0x99], cl
cmp cl, 3
ja 0x786691
mov dword [esp + 0x8c], edx
movzx edx, byte [ebx + 0x1048]
test dl, dl
je 0x7865ae
cmp cl, 1
ja 0x786691
movzx ecx, byte [ebp + ebx + 0x32d2]
and ecx, 0xf
mov edx, dword [esp + 0x8c]
mov byte [esp + edx + 0x9a], cl
cmp cl, 3
ja 0x786670
movzx edx, byte [ebx + 0x1048]
test dl, dl
je 0x7865e4
cmp cl, 1
ja 0x786670
lea edx, [esi + 1]
mov ecx, dword [esp + 0x30]
mov ecx, ebx
mov ebx, edi
mov ebp, dword [esp + 0x30]
cmp edx, ebx
jge 0x7866e6
mov esi, edx
shl edx, 1
mov edi, ebx
lea ebx, [edx + 1]
cmp ebx, 0x80
jae 0x78742f
mov dword [esp + 0x8c], edx
mov dword [esp + 0x30], ebp
lea ebx, [ecx + 0x1050]
test byte [ebx], al
movzx edx, byte [edx + ecx + 0x32d1]
mov ebp, dword [ecx + 0x1044]
test ebp, ebp
jl 0x787428
cmp ebp, 4
ja 0x787428
test ebp, ebp
jle 0x7866dc
mov byte [esp + 0x23], dl
mov dword [esp + 0x90], eax
xor eax, eax
mov dword [esp + 0x4c], eax
mov eax, 0xffffffff
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x90]
jmp 0x7864bc
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f718]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f710]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f700]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov ecx, dword [esp + 0x60]
jmp 0x7864cc
mov ecx, 0xffffffff
jmp 0x7864d5
mov edx, dword [ecx + 0x1044]
cmp edx, 1
jle 0x7866fa
cmp ebp, 0xa
jg 0x78731d
movzx edx, byte [ecx + 0x1049]
test dl, dl
je 0x787309
lea edx, [eax + 1]
cmp edx, 0x80
jae 0x787405
movzx edx, byte [eax + ecx + 0x32d1]
lea ebp, [eax + 2]
cmp ebp, 0x80
jae 0x7873fe
movzx ebp, byte [eax + ecx + 0x32d2]
mov esi, ebx
lea ebx, [eax + 3]
cmp ebx, 0x80
jae 0x7873f7
movzx ebx, byte [eax + ecx + 0x32d3]
test edx, edx
jne 0x78675c
test ebp, ebp
jne 0x7872e8
cmp edx, ebp
jg 0x7872e8
cmp ebp, 0x40
jge 0x7872e8
test edx, edx
je 0x78677a
cmp esi, 1
jne 0x7872c7
mov eax, ebx
shr bl, 4
movzx ebx, bl
and eax, 0xf
test ebx, ebx
je 0x7872c0
mov edi, ecx
lea ecx, [eax + 1]
cmp ecx, ebx
jne 0x78729f
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], edx
mov dword [esp + 0x70], ebx
mov ecx, dword [edi + 0x1050]
mov dword [esp + 0x5c], ecx
mov ebp, dword [edi + 0x1054]
mov edx, dword [edi + 0x1020]
shl ecx, 3
mov ebx, dword [esp + 0x5c]
lea edx, [edx + ebx*8 - 1]
test ecx, ecx
je 0x7873f0
mov ebx, eax
mov eax, edx
cmp ecx, 0xffffffff
je 0x7867dd
cdq
idiv ecx
jmp 0x7867df
neg eax
mov ecx, dword [edi + 0x1024]
lea ecx, [ecx + ebp*8 - 1]
shl ebp, 3
test ebp, ebp
je 0x7873e9
mov dword [esp + 0x8c], esi
mov dword [esp + 0x3c], eax
mov dword [esp + 0x88], ebx
mov eax, ecx
cmp ebp, 0xffffffff
je 0x786812
cdq
idiv ebp
jmp 0x786814
neg eax
mov dword [esp + 0x34], eax
mov ecx, dword [edi + 0x1028]
test ecx, ecx
je 0x78725f
movzx ecx, byte [edi + 0x1049]
test cl, cl
je 0x78691d
xor ecx, ecx
jmp 0x786841
inc ecx
mov ebx, dword [esp + 0x88]
cmp ecx, esi
jge 0x78691d
cmp ecx, 4
jae 0x7873e2
lea edx, [ecx + ecx*2]
movzx edx, byte [esp + edx + 0x98]
cmp edx, 4
jae 0x7873db
lea edx, [edx + edx*2]
mov ebp, dword [edi + edx*4 + 0x1080]
lea ebx, [edi + edx*4 + 0x1080]
test ebp, ebp
jne 0x786839
mov dword [esp + 0x50], ecx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x84], edx
mov ecx, dword [edi + edx*4 + 0x1050]
mov ebx, dword [edi + edx*4 + 0x1054]
lea ebp, [0x812b80]
mov dword [esp], ebp
mov esi, dword [esp + 0x3c]
imul eax, esi
imul ecx, eax
imul ecx, ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00438ab0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x1c4]
mov dword [ebp + ebx*4 + 0x1084], ecx
mov dword [ebp + ebx*4 + 0x1088], eax
mov eax, dword [0xc6f140]
test eax, eax
jne 0x78690d
mov dword [ebp + ebx*4 + 0x1080], edx
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x50]
mov esi, dword [esp + 0x8c]
mov edi, ebp
jmp 0x786839
mov edi, dword [esp + 0x1bc]
mov eax, edx
call fcn.0044c860
jmp 0x7868f7
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
lea edi, [esp + 0xb4]
mov edx, eax
xor eax, eax
call fcn.0044c920
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov ecx, dword [esp + 0x1c4]
mov ebp, dword [esp + 0x3c]
xor edi, edi
xor eax, eax
mov dword [esp + 0x6c], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, 0xffffffd0
mov byte [esp + 0x22], al
xor eax, eax
jmp 0x78722d
mov ecx, dword [esp + 0x48]
inc ecx
mov ebp, dword [esp + 0x1c4]
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x7c]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x58]
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x6c], eax
xor eax, eax
mov ecx, dword [esp + 0x1c4]
imul edx, ebx
mov ecx, dword [esp + 0x48]
cmp ecx, edx
jge 0x786ff1
cmp esi, 1
je 0x786f72
mov edx, dword [esp + 0x40]
imul ebx, edx
mov edx, dword [esp + 0x58]
test edx, edx
je 0x7873c6
mov eax, ecx
mov ebp, edx
cmp ebp, 0xffffffff
je 0x786a08
cdq
idiv ebp
jmp 0x786a0a
xor edx, edx
add edx, ebx
mov dword [esp + 0x68], edx
mov ebx, dword [esp + 0x2c]
imul ebx, edi
mov eax, ecx
cmp ebp, 0xffffffff
je 0x786a23
cdq
idiv ebp
jmp 0x786a25
neg eax
lea edx, [ebx + eax]
mov eax, dword [esp + 0x6c]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x1c4]
movzx ebx, byte [ecx + 0x1049]
test bl, bl
je 0x786f57
mov ebx, dword [esp + 0x7c]
mov ebp, dword [ecx + ebx*4 + 0x1080]
mov ebx, dword [ecx + ebx*4 + 0x1084]
mov ecx, dword [esp + 0x3c]
imul edx, ecx
mov ecx, dword [esp + 0x58]
imul edx, ecx
mov ecx, dword [esp + 0x68]
add edx, ecx
cmp edx, ebx
jae 0x7873b8
shl edx, 8
add edx, ebp
mov ebx, edi
lea edi, [esp + 0xb4]
mov ebp, esi
mov esi, edx
call fcn.0044cbf0
mov edx, dword [esp + 0x70]
test edx, edx
jne 0x786eae
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x786d9c
mov esi, ecx
mov edi, edx
mov edx, dword [esp + 0x24]
cmp ecx, edx
jg 0x786d90
mov ebx, dword [esp + 0x1c4]
movzx ebp, word [ebx + 0x104e]
test bp, bp
jbe 0x786b99
lea ecx, [ebp - 1]
mov word [ebx + 0x104e], cx
movzx ecx, byte [ebx + 0x1049]
test cl, cl
je 0x786b39
mov ecx, dword [esp + 0x7c]
mov ebp, dword [ebx + ecx*4 + 0x1080]
mov edx, dword [ebx + ecx*4 + 0x1084]
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x3c]
imul ecx, ebx
mov ebx, dword [esp + 0x58]
imul ecx, ebx
mov ebx, dword [esp + 0x68]
add ecx, ebx
cmp ecx, edx
jae 0x787395
shl ecx, 8
add ecx, ebp
mov edx, edi
mov edi, ecx
mov ebx, esi
lea esi, [esp + 0xb4]
call fcn.0044cbf0
jmp 0x786997
mov dword [esp], ebx
lea eax, [esp + 0xb4]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x10], ecx
call fcn.00787ab0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
test eax, eax
jne 0x786b84
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x6c]
jmp 0x786997
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], ecx
add esp, 0x1c0
ret
mov ebp, dword [esp + 0x84]
movzx ebp, byte [esp + ebp + 0x9a]
cmp ebp, 4
jae 0x7873a3
imul ebp, ebp, 0x3c4
lea ebp, [ebp + ebx + 0x1fc0]
mov dword [esp + 0x1b4], ebp
jmp 0x786bea
lea eax, [edx + 1]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c4]
mov ebp, dword [esp + 0x1b4]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x70]
mov ecx, eax
mov eax, dword [esp + 0x6c]
cmp ecx, edx
jg 0x786d89
mov dword [esp + 0x78], ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
call fcn.00782e30
movzx ecx, byte [esp + 8]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test eax, eax
jne 0x786d74
mov edx, ecx
shr cl, 4
test dl, 0xf
je 0x786ccd
movzx ecx, cl
mov ebx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x24]
cmp ecx, ebx
jg 0x786cb3
mov dword [esp + 0x78], ecx
mov eax, dword [esp + 0x1c4]
mov dword [esp], eax
and edx, 0xf
mov byte [esp + 4], dl
call fcn.00782840
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test ecx, ecx
jne 0x786c9e
mov ecx, dword [esp + 0x88]
shl eax, cl
cmp ecx, 0x20
sbb edx, edx
and eax, edx
mov edx, dword [esp + 0x78]
cmp edx, 0x40
jae 0x78739c
lea ebx, [0xc21000]
mov ebp, dword [ebx + edx*4]
cmp ebp, 0x40
jae 0x78739c
lea esi, [esp + 0xb4]
mov dword [esi + ebp*4], eax
jmp 0x786bc7
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], edx
add esp, 0x1c0
ret
mov eax, dword [esp + 0x6c]
mov edx, ebx
mov ebx, dword [esp + 0x1c4]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x70]
jmp 0x786ae0
cmp cl, 0xf
jne 0x786cf2
mov ebp, dword [esp + 0x78]
lea edx, [ebp + 0xf]
mov ecx, dword [esp + 0x88]
lea ebx, [0xc21000]
lea esi, [esp + 0xb4]
jmp 0x786bc7
mov edx, 1
shl edx, cl
cmp cl, 0x20
sbb ebx, ebx
and edx, ebx
mov ebx, dword [esp + 0x1c4]
mov word [ebx + 0x104e], dx
test cl, cl
jne 0x786d27
movzx ecx, word [ebx + 0x104e]
dec ecx
mov word [ebx + 0x104e], cx
mov ebx, dword [esp + 0x24]
jmp 0x786cb3
mov dword [esp], ebx
movzx eax, cl
mov dword [esp + 4], eax
call fcn.007831f0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test ecx, ecx
jne 0x786d5f
mov ebx, dword [esp + 0x1c4]
movzx ecx, word [ebx + 0x104e]
or ecx, eax
mov word [ebx + 0x104e], cx
jmp 0x786d12
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], edx
add esp, 0x1c0
ret
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1d0], edx
add esp, 0x1c0
ret
mov ebx, edx
jmp 0x786cb3
mov ebx, dword [esp + 0x1c4]
jmp 0x786b99
mov esi, dword [esp + 0x84]
movzx edi, byte [esp + esi + 0x99]
cmp edi, 4
jae 0x7873aa
imul eax, edi, 0x3c4
mov ecx, dword [esp + 0x1c4]
lea eax, [ecx + eax + 0x10b0]
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.00782e30
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
movzx edx, byte [esp + 8]
test ecx, ecx
jne 0x786e99
cmp dl, 0x10
ja 0x786e78
mov eax, dword [esp + 0x1c4]
mov dword [esp], eax
mov byte [esp + 4], dl
call fcn.00782840
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test ecx, ecx
jne 0x786e63
mov ecx, dword [esp + 0x80]
lea edx, [esp + 0xa4]
mov ebx, dword [edx + ecx*4]
add eax, ebx
mov dword [edx + ecx*4], eax
mov ecx, dword [esp + 0x88]
shl eax, cl
cmp ecx, 0x20
sbb ebp, ebp
and eax, ebp
mov dword [esp + 0xb4], eax
mov esi, dword [esp + 0x28]
lea eax, [esi + 1]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x8c]
mov ecx, eax
mov eax, dword [esp + 0x6c]
jmp 0x786ab1
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], edx
add esp, 0x1c0
ret
lea eax, [0x922f90]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f740]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov esi, dword [esp + 0x84]
movzx edi, byte [esp + esi + 0x9a]
cmp edi, 4
jae 0x7873b1
imul eax, edi, 0x3c4
mov edx, dword [esp + 0x1c4]
lea eax, [eax + edx + 0x1fc0]
mov dword [esp + 8], eax
mov dword [esp], edx
lea eax, [esp + 0xb4]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x28]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x10], ebp
mov ecx, dword [esp + 0x88]
mov esi, 1
shl esi, cl
cmp ecx, 0x20
sbb edi, edi
and esi, edi
mov dword [esp + 0x14], esi
call fcn.00787450
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x786f42
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c4]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x70]
jmp 0x786ae0
mov dword [esp + 0x1cc], edx
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov ebx, edi
lea edi, [esp + 0xb4]
xor eax, eax
call fcn.0044c920
mov eax, dword [esp + 0x6c]
mov ebp, esi
jmp 0x786a97
imul ebp, ebx
test ebp, ebp
je 0x7873bf
mov eax, dword [esp + 0x6c]
cmp ebp, 0xffffffff
je 0x786f8b
cdq
idiv ebp
jmp 0x786f8d
xor edx, edx
mov dword [esp + 0x68], edx
mov eax, dword [esp + 0x6c]
cmp ebp, 0xffffffff
je 0x786f9f
cdq
idiv ebp
jmp 0x786fa1
neg eax
mov edx, dword [esp + 0x6c]
inc edx
mov ebp, dword [esp + 0x68]
shl ebp, 3
mov ebx, dword [esp + 0x1c4]
mov ecx, dword [ebx + 0x1020]
cmp ebp, ecx
jl 0x786fcd
mov ebx, dword [esp + 0x28]
mov eax, edx
mov edx, dword [esp + 0x70]
jmp 0x786997
mov ecx, eax
shl eax, 3
mov ebp, dword [ebx + 0x1024]
cmp eax, ebp
jge 0x786fbe
mov ebp, dword [esp + 0x58]
mov eax, edx
mov edx, ecx
mov ebx, dword [esp + 0x68]
mov ecx, dword [esp + 0x48]
jmp 0x786a30
mov ecx, dword [esp + 0x54]
inc ecx
mov edx, dword [esp + 0x1c4]
mov ebx, dword [esp + 0x40]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x1c4]
mov edx, dword [esp + 0x54]
cmp edx, esi
jge 0x78706d
cmp edx, 4
jae 0x7873d4
lea edx, [edx + edx*2]
mov dword [esp + 0x84], edx
movzx edx, byte [esp + edx + 0x98]
cmp edx, 4
jae 0x7873cd
mov dword [esp + 0x80], edx
lea edx, [edx + edx*2]
mov dword [esp + 0x7c], edx
mov ebx, dword [ecx + edx*4 + 0x1050]
mov dword [esp + 0x58], ebx
mov edx, dword [ecx + edx*4 + 0x1054]
mov dword [esp + 0x2c], edx
xor eax, eax
mov dword [esp + 0x48], eax
xor eax, eax
jmp 0x7869cf
mov edx, dword [esp + 0x44]
inc edx
mov ecx, dword [ecx + 0x1040]
test ecx, ecx
jle 0x787212
mov dword [esp + 0x74], edx
mov eax, edx
cmp ecx, 0xffffffff
je 0x787090
cdq
idiv ecx
jmp 0x787092
xor edx, edx
test edx, edx
jne 0x787200
mov ecx, dword [esp + 0x34]
mov edx, ecx
imul ecx, ebp
mov eax, edx
mov edx, dword [esp + 0x74]
cmp edx, ecx
jl 0x7870ec
movzx ecx, byte [esp + 0x22]
inc ebx
xor eax, eax
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], edx
mov byte [esp + 0x22], cl
mov ecx, dword [esp + 0x1c4]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x88]
mov ebx, dword [esp + 0x40]
cmp ebx, ebp
jge 0x787220
xor eax, eax
mov dword [esp + 0x54], eax
xor eax, eax
jmp 0x787010
mov eax, dword [esp + 0x1c4]
mov dword [esp], eax
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 4], ecx
mov dword [esp + 8], 2
mov dword [esp + 0xc], pe_nt_image_headers32
call fcn.00783d20
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x7871eb
mov ecx, dword [esp + 0x1c4]
movzx edx, byte [ecx + 0x32d0]
cmp dl, 0xff
jne 0x7871ca
movzx edx, byte [ecx + 0x32d1]
movzx ebx, byte [esp + 0x22]
cmp bl, dl
jne 0x7871ca
lea edx, [ebx + 1]
cmp bl, 0xd7
jne 0x7871c6
mov eax, 0xffffffd0
mov dword [ecx + 8], 0
mov dword [ecx + 0xc], 0
mov dword [ecx + 0x10], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov word [ecx + 0x104e], 0
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x38]
mov ecx, eax
mov eax, dword [esp + 0x34]
jmp 0x7870b2
mov eax, edx
jmp 0x78715a
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f750]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x74]
movzx ecx, byte [esp + 0x22]
jmp 0x7870b2
mov eax, dword [esp + 0x34]
movzx ecx, byte [esp + 0x22]
jmp 0x7870b2
inc edi
movzx ebx, byte [esp + 0x22]
mov ebx, dword [esp + 0x88]
cmp edi, edx
jge 0x787242
mov dword [esp + 0x38], edi
xor eax, eax
mov dword [esp + 0x40], eax
xor eax, eax
jmp 0x7870d3
mov dword [esp + 0x1cc], 0
mov dword [esp + 0x1d0], 0
add esp, 0x1c0
ret
mov ecx, dword [edi + 0x102c]
test ecx, ecx
jne 0x786826
mov dword [esp], edi
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00785f70
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x88]
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x1c4]
jmp 0x786826
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f738]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov edi, ecx
jmp 0x78679a
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f730]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f728]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov esi, ebx
mov edi, ecx
xor ebx, ebx
xor edx, edx
mov ebp, 0x3f
xor eax, eax
jmp 0x78679a
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f720]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f6f8]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
mov dword [esp + 0x1cc], ecx
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
lea eax, [0x922f70]
mov dword [esp + 0x1cc], eax
lea eax, [0x91f6e0]
mov dword [esp + 0x1d0], eax
add esp, 0x1c0
ret
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426970
ud2
call fcn.00426970
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426970
ud2
call fcn.00426970
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426770
ud2
call fcn.00426870
ud2
call fcn.00426770
ud2
call fcn.00426870
ud2
call fcn.0044b100
jmp fcn.00786390