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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x2c7e01a
sub esp, 0x58
mov eax, 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov byte [esp + 0x2f], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov eax, dword [esp + 0x64]
test eax, eax
je 0x2c7df60
mov ecx, dword [esp + 0x60]
movzx edx, byte [ecx]
mov byte [esp + 0x2e], dl
mov byte [esp], 7
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
call fcn.02c7d710
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x3c], esi
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x10]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
test edx, edx
jne 0x2c7df35
mov dword [esp + 0x34], edi
mov eax, ebp
mov ebp, dword [esp + 0x5c]
mov ecx, ebp
mov ebp, dword [ebp + 0x30]
test ebp, ebp
je 0x2c7dbee
mov edx, ebp
sar ebp, 0x1f
cmp edi, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg edi, ebx
seta bl
xchg edi, ebx
cmp ebx, edx
mov edx, ebx
seta bl
and ebx, ebp
or ebx, edi
test bl, bl
jne 0x2c7dba5
mov ebx, edx
mov edi, dword [esp + 0x34]
jmp 0x2c7dbee
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov eax, dword [0x30f77cc]
mov ecx, dword [0x30f77c8]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x58
ret
cmp ebx, eax
seta bl
mov ebp, eax
sar eax, 0x1f
cmp edi, eax
mov eax, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov edx, edi
xchg edi, ebx
seta bl
xchg edi, ebx
and ebx, ebp
or ebx, edi
test bl, bl
jne 0x2c7def0
mov dword [esp + 0x38], eax
mov dword [esp + 0x30], esi
movzx ebx, byte [esp + 0x2e]
test bl, 0x80
je 0x2c7de4f
movzx ebx, byte [esp + 0x6c]
test bl, bl
jne 0x2c7dc3e
xor ecx, ecx
jmp 0x2c7dd62
lea eax, [0x30f2080]
mov dword [esp], eax
call fcn.02b45fa0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
lea edx, [0x2d39180]
cmp ecx, edx
jne 0x2c7dffa
nop
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov byte [eax + 0x10], 0
lea ebx, [0x2d5a358]
mov dword [esp + 0x4c], ebx
lea ebx, [0x30f2080]
mov dword [esp + 0x48], ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], eax
mov byte [esp + 0x2f], 1
mov esi, dword [esp + 0x34]
test esi, esi
jne 0x2c7dfed
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
cmp ecx, edx
ja 0x2c7dfe8
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x5c]
mov ebx, dword [ebx + 0x30]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.02c7e030
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x2c7ddda
mov edx, dword [esp + 0x40]
mov ecx, dword [edx + 4]
mov ebx, dword [edx]
mov ebp, dword [edx + 8]
mov eax, dword [edx + 0xc]
cmp ecx, eax
jb 0x2c7dfe3
mov dword [esp], 0
sub ebp, eax
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, eax
lea edx, [ebx + ebp]
mov dword [esp + 4], edx
sub ecx, eax
mov dword [esp + 8], ecx
call fcn.02b2ac40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
nop
mov eax, dword [esp + 0x40]
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov byte [eax + 0x10], 0
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov ecx, 1
test edx, edx
jne 0x2c7dfd8
cmp esi, eax
ja 0x2c7dfcf
mov edx, dword [esp + 0x3c]
sub edx, esi
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, esi
mov ebp, dword [esp + 0x44]
add edx, ebp
mov dword [esp + 0x78], edx
sub eax, esi
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
test cl, 1
je 0x2c7ddd6
and ecx, 0xfffffffe
mov byte [esp + 0x2f], cl
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x54]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.02b45f00
add esp, 0x58
ret
nop
mov eax, dword [esp + 0x40]
mov dword [eax + 4], 0
mov dword [eax + 0xc], 0
mov byte [eax + 0x10], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], edx
mov byte [esp + 0x2f], 0
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x48]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.02b45f00
add esp, 0x58
ret
movzx ebx, byte [esp + 0x6c]
test bl, bl
je 0x2c7dea0
test edx, edx
jne 0x2c7dfc2
mov ebx, dword [esp + 0x3c]
cmp esi, ebx
ja 0x2c7dfb9
mov dword [esp], 0
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.02b2ac40
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
test edx, edx
jne 0x2c7dfae
cmp esi, eax
ja 0x2c7dfa5
mov ecx, dword [esp + 0x3c]
sub ecx, esi
mov edx, ecx
neg ecx
sar ecx, 0x1f
and ecx, esi
mov ebx, dword [esp + 0x44]
add ecx, ebx
mov dword [esp + 0x78], ecx
sub eax, esi
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], edx
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
add esp, 0x58
ret
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x80], eax
mov eax, dword [0x30f77d4]
mov ecx, dword [0x30f77d0]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x58
ret
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0x44]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ebp
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x80], eax
add esp, 0x58
ret
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x80], eax
mov eax, dword [0x30f77d4]
mov ecx, dword [0x30f77d0]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
add esp, 0x58
ret
mov ecx, eax
mov eax, esi
call fcn.02b3e970
mov ecx, eax
mov eax, esi
mov esi, edx
call fcn.02b3ea80
mov ecx, esi
mov edx, ebx
call fcn.02b3e950
mov ecx, esi
mov esi, edx
mov edx, dword [esp + 0x3c]
call fcn.02b3ea40
mov ecx, eax
mov eax, esi
call fcn.02b3e970
mov ecx, eax
mov eax, esi
mov esi, edx
call fcn.02b3ea80
call fcn.02b3e960
call fcn.02b3e950
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x3c]
call fcn.02b3ea40
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x2d0dec0]
mov dword [esp + 8], eax
call fcn.02ae8b90
nop
call fcn.02b123e0
add esp, 0x58
ret
call fcn.02b3d440
jmp fcn.02c7da80