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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x9c]
cmp eax, dword [ecx + 8]
jbe 0x6149de
sub esp, 0x11c
mov eax, dword [esp + 0x120]
mov ecx, dword [eax]
mov dword [esp], ecx
call fcn.006127d0
movzx eax, byte [esp + 4]
test al, al
jne 0x6142f4
mov ecx, dword [esp + 0x120]
movzx edx, byte [ecx + 0x14]
test dl, dl
jne 0x6142ba
nop
mov edx, dword [esp + 0x124]
lea ebx, [edx - 0x64]
cmp ebx, 0x383
ja 0x61495b
cmp edx, 0xc7
jle 0x614175
mov byte [ecx + 0x14], 1
mov dword [ecx + 0x4c], edx
movzx edx, byte [ecx + 0x38]
test dl, dl
je 0x6145bb
mov edx, dword [ecx + 0x2c]
test edx, edx
jne 0x6145bb
mov edx, dword [ecx + 0x34]
test edx, edx
je 0x61416e
mov dword [esp + 0x64], edx
lea edi, [esp + 0xec]
xor eax, eax
call fcn.00462904
lea ecx, [0x679a80]
mov dword [esp], ecx
mov dword [esp + 4], edx
lea ebx, [esp + 0xec]
mov dword [esp + 8], ebx
call fcn.0040d940
xor eax, eax
jmp 0x614757
xor eax, eax
jmp 0x614711
cmp edx, 0x64
je 0x61417e
xor eax, eax
jmp 0x6141a0
lea eax, [ecx + 0x18]
mov dword [esp], eax
call fcn.00466d20
mov eax, dword [esp + 4]
test eax, eax
setne al
mov ecx, dword [esp + 0x120]
mov edx, dword [esp + 0x124]
test al, al
je 0x6141e8
lea eax, [ecx + 0x1c]
mov dword [esp + 0x70], eax
mov dword [esp], eax
call fcn.00469520
nop
mov eax, dword [esp + 0x120]
lea ecx, [eax + 0x18]
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.00466d60
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.004698a0
mov ecx, dword [esp + 0x120]
mov edx, dword [esp + 0x124]
mov eax, dword [ecx + 4]
mov ebx, dword [eax + 0x14]
cmp ebx, 1
jle 0x6141fa
mov eax, 1
jmp 0x614207
jne 0x614205
cmp dword [eax + 0x18], 1
setge al
jmp 0x614207
xor eax, eax
mov ebx, dword [ecx]
mov ebx, dword [ebx + 0x2c]
mov dword [esp], ebx
mov byte [esp + 4], al
mov dword [esp + 8], edx
lea eax, [ecx + 0x8b]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 3
call fcn.00616030
mov eax, dword [esp + 0x120]
mov ecx, dword [eax]
mov edx, dword [eax + 0x34]
mov ebx, dword [0x88e690]
mov ecx, dword [ecx + 0x2c]
mov dword [esp], edx
lea edx, [0x6ee8c4]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 0
call fcn.00611f80
mov eax, dword [esp + 0x120]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x2c]
mov edx, dword [0x8885a8]
mov ebx, dword [0x8885ac]
mov ebp, dword [0x8885b0]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
call fcn.005f9d70
mov eax, dword [esp + 0x120]
mov eax, dword [eax]
mov eax, dword [eax + 0x2c]
mov dword [esp], eax
call fcn.005f9bf0
add esp, 0x11c
ret
call fcn.00613ee0
lea edi, [esp + 0x94]
lea esi, [esp]
call fcn.00462db2
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa8]
test ecx, ecx
jne 0x61454c
mov eax, 1
lea ecx, [0x6ecd58]
jmp 0x614472
call fcn.00613ee0
lea edi, [esp + 0xc0]
lea esi, [esp]
call fcn.00462db2
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
test ecx, ecx
jne 0x614403
mov eax, 1
lea ecx, [0x6ecd58]
mov dword [esp + 0x34], eax
mov dword [esp + 0x54], ecx
lea edi, [esp + 0x7c]
xor eax, eax
call fcn.0046290a
mov ecx, dword [esp + 0xc8]
mov ebx, dword [esp + 0xcc]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.00409600
mov ecx, dword [esp + 8]
lea edx, [0x64f280]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
call fcn.00409600
mov ecx, dword [esp + 8]
lea edx, [0x64f280]
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xd8]
mov dword [esp], ecx
call fcn.004094f0
mov ecx, dword [esp + 4]
lea edx, [0x64eac0]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x120]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov dword [esp], ecx
lea ecx, [0x69a878]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x41
lea ecx, [esp + 0x7c]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 3
call fcn.00616a50
add esp, 0x11c
ret
dec ecx
test ecx, ecx
je 0x614410
lea edx, [ecx + eax - 1]
cmp byte [edx], 0x2f
je 0x614402
lea edx, [ecx - 1]
jmp 0x614416
dec edx
test edx, edx
jl 0x614445
cmp edx, ecx
jae 0x61446b
lea ebx, [eax + edx]
cmp byte [ebx], 0x2f
jne 0x614415
test edx, edx
jl 0x614441
lea ebx, [edx + 1]
cmp ecx, ebx
jb 0x614464
sub ecx, edx
dec ecx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ebx, ecx
add eax, ebx
jmp 0x614447
mov edx, ecx
jmp 0x614447
mov edx, ecx
test edx, edx
jne 0x61445b
mov eax, 1
lea ecx, [0x685197]
jmp 0x614329
mov ecx, eax
mov eax, edx
jmp 0x614329
mov eax, ebx
call fcn.00462770
mov eax, edx
call fcn.00462710
mov dword [esp + 0x30], eax
mov dword [esp + 0x50], ecx
lea edi, [esp + 0x7c]
xor eax, eax
call fcn.0046290a
mov ecx, dword [esp + 0x9c]
mov ebx, dword [esp + 0xa0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.00409600
mov ecx, dword [esp + 8]
lea edx, [0x64f280]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x50]
mov dword [esp], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 4], ecx
call fcn.00409600
mov ecx, dword [esp + 8]
lea edx, [0x64f280]
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp], ecx
call fcn.004094f0
mov ecx, dword [esp + 4]
lea edx, [0x64eac0]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x120]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov dword [esp], ecx
lea ecx, [0x699e25]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x3b
lea ecx, [esp + 0x7c]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 3
mov dword [esp + 0x14], 3
call fcn.00616a50
add esp, 0x11c
ret
dec ecx
test ecx, ecx
je 0x614559
lea edx, [ecx + eax - 1]
cmp byte [edx], 0x2f
je 0x61454b
lea edx, [ecx - 1]
jmp 0x61455f
dec edx
test edx, edx
jl 0x61458e
cmp edx, ecx
jae 0x6145b4
lea ebx, [edx + eax]
cmp byte [ebx], 0x2f
jne 0x61455e
test edx, edx
jl 0x61458a
lea ebx, [edx + 1]
cmp ecx, ebx
jb 0x6145ad
sub ecx, edx
dec ecx
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ebx, ecx
add eax, ebx
jmp 0x614590
mov edx, ecx
jmp 0x614590
mov edx, ecx
test edx, edx
jne 0x6145a4
mov eax, 1
lea ecx, [0x685197]
jmp 0x614472
mov ecx, eax
mov eax, edx
jmp 0x614472
mov eax, ebx
call fcn.00462770
mov eax, edx
call fcn.00462710
mov eax, dword [ecx + 0x34]
lea edx, [0x679a80]
mov dword [esp], edx
mov dword [esp + 4], eax
lea eax, [0x688a4f]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xe
call fcn.0040f6d0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
je 0x6145f6
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
jmp 0x6145fa
xor eax, eax
xor ecx, ecx
test eax, eax
je 0x61470a
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
mov dword [esp + 0xc], 0x40
call fcn.00495230
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x61465d
test ecx, ecx
sete al
setg cl
and eax, 1
or ecx, eax
test cl, cl
je 0x61465d
mov eax, dword [esp + 0x120]
mov dword [eax + 0x48], ebx
mov dword [eax + 0x44], edx
jmp 0x61470a
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call fcn.00409600
mov eax, dword [esp + 8]
lea ecx, [0x64f280]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x120]
mov ecx, dword [eax]
mov ecx, dword [ecx]
mov dword [esp], ecx
lea ecx, [0x6933fa]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x22
lea ecx, [esp + 0x74]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.00616a50
mov eax, dword [esp + 0x120]
mov eax, dword [eax + 0x34]
mov dword [esp + 0x60], eax
lea ecx, [0x688a4f]
mov dword [esp], ecx
mov dword [esp + 4], 0xe
call fcn.005fb500
lea eax, [0x671940]
mov dword [esp], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 4], eax
call fcn.004100f0
add esp, 0x11c
ret
mov edx, dword [0x8b5080]
test edx, edx
jne 0x614723
mov dword [ecx + 0x2c], eax
jmp 0x6145bb
lea edi, [ecx + 0x2c]
call fcn.00462690
jmp 0x6145bb
mov eax, dword [esp + 0xf0]
mov eax, dword [eax + 4]
mov dword [esp + 0x38], eax
lea ecx, [esp + 0xec]
mov dword [esp], ecx
call fcn.0040db70
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
add eax, ecx
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0xec]
test ecx, ecx
jne 0x614730
lea ecx, [0x64f280]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0044a050
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x64]
mov edx, dword [ecx]
lea ebx, [0x679a80]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], 0
call fcn.0040c820
mov eax, dword [esp + 0xc]
mov dword [esp + 0x68], eax
lea edi, [esp + 0xec]
xor eax, eax
call fcn.00462904
lea eax, [0x679a80]
mov dword [esp], eax
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
lea ecx, [esp + 0xec]
mov dword [esp + 8], ecx
call fcn.0040d940
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x6c]
jmp 0x614804
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x58], ecx
lea eax, [esp + 0xec]
mov dword [esp], eax
call fcn.0040db70
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0xec]
test edx, edx
je 0x614941
mov dword [esp + 0x3c], eax
mov dword [esp + 0x58], ecx
mov ebx, dword [esp + 0xf0]
mov ebp, dword [ebx]
mov esi, dword [edx]
mov edx, dword [edx + 4]
mov ebx, dword [ebx + 4]
test ebp, ebp
je 0x6148eb
mov dword [esp + 0x48], edx
mov dword [esp + 0x5c], esi
lea edx, [0x64f280]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.004108f0
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x3c]
cmp ebx, edx
jb 0x614956
mov dword [esp + 0x44], edx
lea eax, [0x679a80]
mov dword [esp], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0xc], edx
call fcn.0040fd60
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x44]
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov ecx, dword [0x8b5080]
test ecx, ecx
jne 0x6148ba
mov edx, dword [esp + 0x58]
mov dword [edi], edx
mov ecx, dword [esp + 0x3c]
cmp ecx, eax
jmp 0x6148d3
mov ecx, eax
mov eax, dword [esp + 0x58]
call fcn.00462690
mov edx, dword [esp + 0x3c]
cmp edx, ecx
mov ebx, eax
mov eax, ecx
mov ecx, edx
mov edx, ebx
jb 0x614951
sub ecx, eax
mov ebx, ecx
neg ecx
shl eax, 3
sar ecx, 0x1f
and eax, ecx
lea ecx, [edx + eax]
jmp 0x6147e5
lea eax, [0x679a80]
mov dword [esp], eax
mov ecx, dword [esp + 0x68]
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
call fcn.0040fd60
mov edi, dword [esp + 0x10]
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov eax, dword [0x8b5080]
test eax, eax
jne 0x61492d
mov dword [edi], 0
jmp 0x614934
xor eax, eax
call fcn.00462690
mov ebx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x58]
jmp 0x6147e5
mov ecx, dword [esp + 0x120]
mov eax, dword [esp + 0x68]
jmp 0x614711
call fcn.00462770
call fcn.004627b0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp], edx
call fcn.004094f0
mov eax, dword [esp + 4]
lea ecx, [0x64eac0]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
lea eax, [0x68fd6a]
mov dword [esp], eax
mov dword [esp + 4], 0x1b
lea eax, [esp + 0x74]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004b72c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00409600
mov eax, dword [esp + 8]
lea ecx, [0x64f280]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004353d0
nop
call fcn.00461280
jmp fcn.006140a0