Function at 0x614320
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x1a8]
cmp eax, dword [ecx + 8]
jbe 0x6149ba
sub esp, 0x228
mov eax, dword [esp + 0x22c]
movzx ecx, byte [eax + 0x295]
test cl, cl
je 0x6144fb
lea eax, [0x791f40]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x224], eax
lea ecx, [0x791f40]
mov dword [esp], ecx
call fcn.00409410
mov eax, dword [esp + 8]
lea ecx, [0x791f40]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ca510
mov eax, dword [esp + 8]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x22c]
mov dword [esp], ecx
mov edx, dword [esp + 0x230]
mov dword [esp + 4], edx
call fcn.00602c20
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x22c]
mov dword [esp], ecx
lea edx, [0x73e3e0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x224]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x10], eax
call fcn.00603910
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x6144e6
lea eax, [0x791f40]
mov dword [esp], eax
mov eax, dword [esp + 0x224]
mov dword [esp + 4], eax
call fcn.00409410
mov eax, dword [esp + 0x224]
mov ecx, dword [eax + 0x1c]
test ecx, ecx
setne cl
mov edx, dword [eax + 0x18]
test edx, edx
setne dl
mov ebx, dword [esp + 8]
or ecx, edx
test cl, cl
je 0x6144dd
mov dword [esp + 0x21c], ebx
lea eax, [0x758e80]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call fcn.0044b030
mov eax, dword [esp + 0xc]
mov dword [esp + 0x218], eax
lea edi, [esp + 0x120]
xor eax, eax
call fcn.00464624
mov eax, dword [esp + 0x22c]
mov ecx, dword [eax + 0x78]
mov esi, dword [eax + 0x7c]
lea edx, [0x7a9ca0]
cmp ecx, edx
jne 0x6149a3
lea edi, [esp + 0x120]
call fcn.00464918
mov ecx, dword [esp + 0x224]
mov ecx, dword [ecx + 0x18]
mov edx, dword [esp + 0x138]
sub ecx, edx
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00602c20
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x22c]
mov edx, dword [esp + 0x218]
xor ebx, ebx
xor ebp, ebp
jmp 0x614819
xor eax, eax
xor ecx, ecx
jmp 0x6147f4
mov dword [esp + 0x238], ecx
mov dword [esp + 0x23c], edx
add esp, 0x228
ret
lea eax, [0x791ea0]
mov dword [esp], eax
call fcn.0040bcc0
mov eax, dword [esp + 4]
mov dword [esp + 0x220], eax
lea ecx, [0x791ea0]
mov dword [esp], ecx
call fcn.00409410
mov eax, dword [esp + 8]
lea ecx, [0x791ea0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004ca510
mov eax, dword [esp + 8]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x22c]
mov dword [esp], ecx
mov edx, dword [esp + 0x230]
mov dword [esp + 4], edx
call fcn.00602c20
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x22c]
mov dword [esp], ecx
lea edx, [0x73e3a0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x220]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x10], eax
call fcn.00603910
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x61466b
lea eax, [0x791ea0]
mov dword [esp], eax
mov eax, dword [esp + 0x220]
mov dword [esp + 4], eax
call fcn.00409410
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x220]
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x614665
mov dword [esp + 0x21c], eax
lea eax, [0x758e40]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call fcn.0044b030
mov eax, dword [esp + 0xc]
mov dword [esp + 0x218], eax
lea edi, [esp + 0x40]
xor eax, eax
call fcn.00464628
mov eax, dword [esp + 0x22c]
mov ecx, dword [eax + 0x78]
mov esi, dword [eax + 0x7c]
lea edx, [0x7aa1e0]
cmp ecx, edx
jne 0x6147de
lea edi, [esp + 0x40]
call fcn.00464940
mov ecx, dword [esp + 0x220]
mov ecx, dword [ecx + 0xc]
sub ecx, dword [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00602c20
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x22c]
mov edx, dword [esp + 0x218]
xor ebx, ebx
xor ebp, ebp
jmp 0x6146f4
xor ecx, ecx
xor edx, edx
jmp 0x614680
mov dword [esp + 0x238], ecx
mov dword [esp + 0x23c], edx
add esp, 0x228
ret
lea ebx, [0x791ea0]
mov ebp, dword [esp + 0x22c]
mov dword [ebp + 0x128], ebx
mov dword [ebp + 0x130], ecx
mov ecx, dword [0xaab020]
test ecx, ecx
jne 0x6146b1
mov dword [ebp + 0x12c], eax
mov dword [ebp + 0x134], edx
jmp 0x6146c9
lea edi, [ebp + 0x12c]
call fcn.004643b0
lea edi, [ebp + 0x134]
mov eax, edx
call fcn.004643b0
mov byte [ebp + 0x2a4], 1
mov dword [esp + 0x238], 0
mov dword [esp + 0x23c], 0
add esp, 0x228
ret
mov dword [edx + ebp*4 - 4], edi
add eax, 4
mov esi, dword [ecx + 0x2ac]
add esi, 0xfffffffc
cmp eax, esi
jbe 0x61470b
mov esi, dword [0xa846b0]
xor edi, edi
jmp 0x61474e
mov dword [esp + 0x210], edx
mov esi, dword [ecx + 0x28c]
mov edi, dword [ecx + 0x288]
mov edx, dword [ecx + 0x290]
cmp eax, esi
ja 0x6147d7
sub esi, eax
sub edx, eax
neg edx
sar edx, 0x1f
and edx, eax
cmp esi, 3
jbe 0x6147cb
mov edx, dword [edi + edx]
mov edi, edx
xor esi, esi
mov edx, dword [esp + 0x210]
test esi, esi
jne 0x6147a5
test edi, edi
je 0x6147a5
inc ebp
cmp ebx, ebp
jae 0x6146ed
mov dword [esp + 0x30], edi
mov dword [esp + 0x28], eax
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x758e40]
mov dword [esp + 0x10], eax
call fcn.0044b1b0
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x22c]
mov edi, dword [esp + 0x30]
jmp 0x6146ed
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00409680
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x21c]
lea ecx, [0x74ac00]
jmp 0x614680
mov eax, 3
mov ecx, esi
call fcn.00464430
mov ecx, esi
call fcn.004644a0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x758500]
mov dword [esp + 8], eax
call fcn.00409250
mov edx, ecx
mov ecx, eax
mov eax, ebx
lea ebx, [0x791f40]
jmp 0x614686
lea esi, [edx + ebp*8 - 8]
mov dword [esi], eax
lea esi, [edx + ebp*8 - 4]
mov edi, dword [esp + 0x24]
mov dword [esi], edi
mov eax, dword [esp + 0x38]
lea esi, [eax + 8]
mov dword [esp + 0x38], esi
cmp dword [ecx + 0x2ac], esi
jae 0x61483d
mov edi, dword [0xa846b0]
xor eax, eax
xor eax, eax
mov dword [esp + 0x24], eax
xor eax, eax
jmp 0x6148fd
mov dword [esp + 0x214], edx
mov edi, dword [ecx + 0x288]
mov esi, dword [ecx + 0x28c]
mov edx, dword [ecx + 0x290]
cmp eax, esi
ja 0x61499c
sub edx, eax
neg edx
sar edx, 0x1f
and edx, eax
sub esi, eax
cmp esi, 7
jbe 0x614990
mov dword [esp + 0x2c], ebp
movzx esi, byte [edi + edx]
mov eax, ebx
movzx ebx, byte [edi + edx + 1]
mov dword [esp + 0x34], ebx
shl ebx, 8
or esi, ebx
mov ebx, dword [esp + 0x34]
shr ebx, 0x18
movzx ebp, byte [edi + edx + 2]
mov dword [esp + 0x34], ebp
shl ebp, 0x10
or esi, ebp
mov ebp, dword [esp + 0x34]
shr ebp, 0x10
or ebp, ebx
movzx ebx, byte [edi + edx + 3]
mov dword [esp + 0x34], ebx
shl ebx, 0x18
or esi, ebx
mov ebx, dword [esp + 0x34]
shr ebx, 8
or ebx, ebp
movzx ebp, byte [edi + edx + 4]
or ebp, ebx
movzx ebx, byte [edi + edx + 5]
shl ebx, 8
or ebp, ebx
movzx ebx, byte [edi + edx + 6]
shl ebx, 0x10
or ebp, ebx
movzx edx, byte [edi + edx + 7]
shl edx, 0x18
or ebp, edx
mov edx, dword [esp + 0x214]
mov ebx, eax
mov eax, esi
mov dword [esp + 0x24], ebp
xor edi, edi
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x38]
test edi, edi
jne 0x61496a
test eax, eax
xchg edi, ebx
sete bl
xchg edi, ebx
mov esi, dword [esp + 0x24]
test esi, esi
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, edi
xchg esi, eax
test al, al
xchg esi, eax
jne 0x61496a
inc ebp
cmp ebx, ebp
jae 0x614805
mov dword [esp + 0x20], eax
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x758e80]
mov dword [esp + 0x10], eax
call fcn.0044b1b0
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x22c]
jmp 0x614805
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call fcn.00409680
mov ecx, dword [esp + 0xc]
mov ebx, dword [esp + 0x21c]
lea eax, [0x74ac40]
jmp 0x6147f4
mov eax, 7
mov ecx, esi
call fcn.00464430
mov ecx, esi
call fcn.004644a0
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x758500]
mov dword [esp + 8], eax
call fcn.00409250
nop
call fcn.00462fa0
jmp fcn.00614320