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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6d2067
sub esp, 0x68
mov eax, dword [esp + 0x78]
test eax, eax
je 0x6d1ef3
mov ecx, dword [esp + 0x7c]
cmp dword [0xc71220], ecx
je 0x6d1ec4
xor edx, edx
test dl, dl
jne 0x6d1e65
xor edx, edx
test dl, dl
jne 0x6d1db2
test ecx, ecx
jne 0x6d1d62
xor edx, edx
test dl, dl
je 0x6d1d55
nop
mov edx, eax
and eax, 0x1f
cmp eax, 0x14
jne 0x6d1d4f
add eax, 0xffffffee
cmp eax, 1
ja 0x6d1d3f
test edx, 0x200
je 0x6d1d0a
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.0048c0d0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x38], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x34], edx
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00490380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x80]
mov dword [esp + 8], edx
call eax
movzx eax, byte [esp + 0xc]
test al, al
jne 0x6d1ce5
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x18], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edx
nop
mov ebx, eax
and eax, 0x1f
cmp eax, 0x16
je 0x6d1c8c
xor eax, eax
test al, al
je 0x6d1b39
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.0048c0d0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
je 0x6d1abc
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
add esp, 0x68
ret
mov dword [esp + 0x1c], eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edx
mov ebx, dword [esp + 0x7c]
test ebx, ebx
je 0x6d1ad3
mov ebx, dword [ebx + 4]
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x80]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
lea eax, [0x850658]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x25
lea eax, [esp + 0x44]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.006cc610
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
jmp 0x6d1aa3
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.00490380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
lea edx, [0x993400]
cmp edx, eax
jne 0x6d204a
mov dword [esp], ecx
call fcn.00486420
lea eax, [0x993400]
test byte [eax], al
mov eax, dword [esp + 4]
mov dword [esp], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x80]
mov dword [esp + 8], ecx
call fcn.00486810
movzx eax, byte [esp + 0xc]
test al, al
je 0x6d1c83
mov eax, dword [esp + 0x18]
test eax, 0x100
jne 0x6d1c5a
mov ecx, dword [esp + 0x24]
mov dword [esp], ecx
mov edx, dword [esp + 0x28]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00490380
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x6d1bd5
mov edx, dword [edx + 4]
test ecx, ecx
je 0x6d1bdc
mov ecx, dword [ecx + 4]
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x58], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
lea eax, [0x852b2c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x29
lea eax, [esp + 0x58]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 2
call fcn.006cc610
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x24]
jmp 0x6d1aa3
mov ecx, dword [esp + 0x24]
mov dword [esp], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0048a180
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
jmp 0x6d1aa3
mov eax, dword [esp + 0x18]
jmp 0x6d1baa
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call fcn.00490380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x80]
mov dword [esp + 8], edx
call eax
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x18]
jmp 0x6d1a7b
mov eax, dword [esp + 0x38]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x8c], eax
add esp, 0x68
ret
test edx, 0x80
je 0x6d1d37
mov eax, dword [esp + 0x74]
mov ebx, dword [eax]
test ebx, ebx
setne bl
xor ebx, 1
test bl, bl
je 0x6d19e2
mov eax, edx
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x70]
jmp 0x6d1a5e
mov eax, dword [esp + 0x74]
mov ebx, eax
jmp 0x6d1d18
mov eax, dword [esp + 0x74]
mov ebp, dword [eax]
test ebp, ebp
setne bl
xor ebx, 1
jmp 0x6d1d20
mov eax, dword [esp + 0x74]
jmp 0x6d1d28
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
jmp 0x6d1aa3
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00490380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x80]
mov dword [esp + 8], edx
call eax
movzx edx, byte [esp + 0xc]
xor edx, 1
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
jmp 0x6d19b3
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
lea eax, [0x83d780]
mov dword [esp], eax
lea eax, [esp + 0x4c]
mov dword [esp + 4], eax
call fcn.00408350
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
test ecx, ecx
je 0x6d1e5d
nop
movzx edx, byte [0xc714a0]
test dl, dl
je 0x6d1e0a
mov dword [0xc714a4], ecx
mov edx, dword [0xc83da0]
test edx, edx
jne 0x6d1e50
mov dword [0xc714a8], eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x6d1e48
nop
movzx edx, byte [ecx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x6d1e2f
or edx, 0x80
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edx
add esp, 0x68
ret
xor ecx, ecx
xor edx, edx
xor eax, eax
jmp 0x6d1e2f
lea edi, [0xc714a8]
call fcn.00459d90
jmp 0x6d1e0a
xor ecx, ecx
xor edx, edx
xor eax, eax
jmp 0x6d1e2f
mov ecx, dword [esp + 0x70]
mov dword [esp], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00490380
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x7c]
cmp eax, edx
je 0x6d1e9f
mov eax, 1
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x78]
jmp 0x6d19a1
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x80]
mov dword [esp + 8], eax
call fcn.004033f0
movzx eax, byte [esp + 0xc]
xor eax, 1
mov edx, dword [esp + 0x7c]
jmp 0x6d1e92
mov dword [esp], ecx
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
mov edx, dword [0xc71224]
mov dword [esp + 8], edx
call fcn.004033f0
movzx edx, byte [esp + 0xc]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
jmp 0x6d1997
mov ecx, dword [esp + 0x7c]
test ecx, ecx
je 0x6d2025
mov eax, dword [ecx + 0x50]
mov edx, dword [esp + 0x80]
mov dword [esp], edx
call eax
mov eax, dword [esp + 4]
lea ecx, [eax - 0x12]
cmp ecx, 5
ja 0x6d1fdc
mov eax, 1
test al, al
jne 0x6d1f94
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x6d1f90
mov ecx, dword [eax + 4]
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], ecx
mov eax, dword [esp + 0x80]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp], ecx
lea edx, [0x849d5d]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x1a
lea edx, [esp + 0x44]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.006cc610
mov eax, dword [esp + 0x78]
jmp 0x6d1985
mov ecx, eax
jmp 0x6d1f32
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
call fcn.00490de0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], eax
add esp, 0x68
ret
cmp eax, 0x19
jne 0x6d201e
mov eax, dword [esp + 0x7c]
cmp dword [0xc71220], eax
je 0x6d1ff6
xor ecx, ecx
mov eax, ecx
jmp 0x6d1f23
mov dword [esp], eax
mov ecx, dword [esp + 0x80]
mov dword [esp + 4], ecx
mov edx, dword [0xc71224]
mov dword [esp + 8], edx
call fcn.004033f0
movzx ecx, byte [esp + 0xc]
mov eax, dword [esp + 0x7c]
jmp 0x6d1fef
xor eax, eax
jmp 0x6d1f23
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x68
ret
mov dword [esp], eax
lea eax, [0x837980]
mov dword [esp + 4], eax
lea eax, [0x82bc60]
mov dword [esp + 8], eax
call fcn.00408210
nop
call fcn.00458550
jmp fcn.006d1960