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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x2c79346
sub esp, 0x74
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x2c78c94
mov ecx, dword [esp + 0x78]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x2d3f269]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.02ba65c0
mov eax, dword [esp + 0x10]
test eax, eax
je 0x2c78c22
lea ecx, [eax + 1]
mov edx, dword [esp + 0x7c]
cmp edx, ecx
je 0x2c78bf3
mov dword [esp + 0x5c], eax
mov dword [esp + 0x28], ecx
lea eax, [0x2d0de00]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], edx
call fcn.02b274d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
cmp ecx, 0xffffffff
je 0x2c78be8
mov edx, dword [esp + 0x7c]
cmp edx, ecx
jb 0x2c79340
mov ebx, dword [esp + 0x78]
mov ebp, edx
xor esi, esi
xor edi, edi
jmp 0x2c79299
xor ecx, ecx
mov edx, dword [esp + 0x7c]
jmp 0x2c78cc4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x80], eax
lea eax, [edx - 1]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x74
ret
lea eax, [0x2d28d00]
mov dword [esp], eax
call fcn.02aeb620
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [0x311e9a0]
test eax, eax
jne 0x2c78c4d
mov eax, dword [esp + 0x78]
mov dword [edi], eax
jmp 0x2c78c56
mov eax, dword [esp + 0x78]
call fcn.02b3e880
mov dword [edi + 0xc], 2
lea eax, [0x2d3f2ba]
mov dword [edi + 8], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [0x2da46e4]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edi
add esp, 0x74
ret
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x74
ret
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x28]
xor edi, edi
mov edi, 0x48
mov dword [esp + 0x48], edi
mov edi, pe_nt_image_headers32
mov dword [esp + 0x34], edi
xor edi, edi
jmp 0x2c78d19
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x54]
mov dword [eax + edx*4], ebx
mov edx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x5c]
mov esi, dword [esp + 0x58]
mov ecx, edi
mov edx, dword [esp + 0x30]
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0x50]
cmp ebx, esi
jle 0x2c78ee6
mov dword [esp + 0x40], edi
mov dword [esp + 0x30], edx
mov dword [esp + 0x60], eax
mov eax, 1
mov dword [esp + 0x20], eax
mov eax, 0x24
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x60]
jmp 0x2c78f4b
mov edx, dword [esp + 0x40]
mov ebx, ebp
sub ebp, edx
test edx, edx
jne 0x2c78d69
mov edx, eax
mov eax, 0x5d9f7391
mov edi, edx
imul ebp
sar edx, 8
sar ebp, 0x1f
sub edx, ebp
jmp 0x2c78d76
mov edi, ebp
shr ebp, 0x1f
lea edx, [ebp + edi]
sar edx, 1
mov edi, eax
lea ebp, [ecx + 1]
test ebp, ebp
je 0x2c7927a
mov dword [esp + 0x44], edx
mov eax, edx
cmp ebp, 0xffffffff
je 0x2c78d91
cdq
idiv ebp
jmp 0x2c78d93
neg eax
mov edx, dword [esp + 0x44]
add edx, eax
xor eax, eax
jmp 0x2c791dc
mov dword [esp + 0x58], esi
lea esi, [edx + edx*8]
cmp edx, 0xffffffda
je 0x2c79275
mov dword [esp + 0x70], edi
mov eax, ebx
cdq
idiv ebp
mov edx, dword [esp + 0x34]
add edx, eax
mov eax, ebx
mov ebx, edx
cdq
idiv ebp
mov dword [esp + 0x40], edx
shl esi, 2
mov edx, dword [esp + 0x44]
add edx, 0x26
mov eax, esi
mov edi, edx
cmp edi, 0xffffffff
je 0x2c78de2
cdq
idiv edi
jmp 0x2c78de4
neg eax
mov edx, dword [esp + 0x3c]
add edx, eax
cmp ebx, 0x10ffff
jg 0x2c791f1
cmp ecx, 0x400
jge 0x2c791f1
mov dword [esp + 0x48], edx
mov dword [esp + 0x54], ebx
mov esi, dword [esp + 0x30]
cmp esi, ebp
jb 0x2c78e18
mov eax, dword [esp + 0x70]
jmp 0x2c78e5b
mov dword [esp + 0x2c], ecx
lea eax, [0x2d0de00]
mov dword [esp], eax
mov edx, dword [esp + 0x70]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.02b27650
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebp, [ecx + 1]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x54]
mov esi, edx
mov edx, dword [esp + 0x48]
mov dword [eax + ecx*4], 0
mov edi, dword [esp + 0x40]
mov ecx, edx
lea edx, [edi + 1]
cmp ebp, edx
jb 0x2c7926c
mov dword [esp + 0x30], esi
mov dword [esp + 0x50], edx
sub esi, edi
dec esi
xchg esi, ebx
neg ebx
xchg esi, ebx
shl edx, 2
sar esi, 0x1f
and esi, edx
lea edx, [esi + eax]
mov esi, ebp
sub ebp, edi
cmp esi, edi
jb 0x2c79263
mov dword [esp + 0x5c], esi
dec ebp
sub esi, edi
mov ebx, dword [esp + 0x30]
sub ebx, edi
neg ebx
shl edi, 2
sar ebx, 0x1f
and ebx, edi
add ebx, eax
cmp esi, ebp
jl 0x2c78eba
mov esi, ebp
cmp ebx, edx
je 0x2c78ce8
mov dword [esp + 0x68], eax
mov dword [esp], edx
mov dword [esp + 4], ebx
shl esi, 2
mov dword [esp + 8], esi
call fcn.02b3f220
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x48]
jmp 0x2c78ce8
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call fcn.02b2af90
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x74
ret
mov edx, dword [esp + 0x38]
add edx, 0x24
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x20], edi
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x30]
mov edi, ebp
mov ebp, dword [esp + 0x78]
cmp ebx, esi
je 0x2c79153
jbe 0x2c7927f
movzx edx, byte [ebp + esi]
lea ebp, [edx - 0x30]
xchg ebp, eax
cmp al, 9
xchg ebp, eax
ja 0x2c78f75
add edx, 0xffffffea
movzx edx, dl
mov ebp, 1
jmp 0x2c78fa1
lea ebp, [edx - 0x41]
xchg ebp, eax
cmp al, 0x19
xchg ebp, eax
ja 0x2c78f8b
xchg ebp, eax
movzx edx, al
xchg ebp, eax
mov ebp, 1
jmp 0x2c78fa1
add edx, 0xffffff9f
cmp dl, 0x19
ja 0x2c78f9d
movzx edx, dl
mov ebp, 1
jmp 0x2c78fa1
xor edx, edx
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x2c790e1
mov ebp, dword [esp + 0x20]
imul ebp, edx
add ebp, edi
test ebp, ebp
jl 0x2c7906f
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x48]
sub edi, ebx
cmp edi, 1
jge 0x2c78fd2
mov edi, 1
jmp 0x2c78fdc
cmp edi, 0x1a
jle 0x2c78fdc
mov edi, 0x1a
inc esi
cmp edi, edx
jg 0x2c78d48
lea edx, [edi - 0x24]
neg edx
mov edi, dword [esp + 0x20]
imul edi, edx
cmp edi, 0x38e38e3
jl 0x2c78f2e
lea eax, [0x2d28d00]
mov dword [esp], eax
call fcn.02aeb620
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [0x311e9a0]
test eax, eax
jne 0x2c79028
mov eax, dword [esp + 0x78]
mov dword [edi], eax
jmp 0x2c79031
mov eax, dword [esp + 0x78]
call fcn.02b3e880
mov dword [edi + 0xc], 2
lea eax, [0x2d3f2ba]
mov dword [edi + 8], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [0x2da46e4]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edi
add esp, 0x74
ret
lea eax, [0x2d28d00]
mov dword [esp], eax
call fcn.02aeb620
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [0x311e9a0]
test eax, eax
jne 0x2c7909a
mov eax, dword [esp + 0x78]
mov dword [edi], eax
jmp 0x2c790a3
mov eax, dword [esp + 0x78]
call fcn.02b3e880
mov dword [edi + 0xc], 2
lea eax, [0x2d3f2ba]
mov dword [edi + 8], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [0x2da46e4]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edi
add esp, 0x74
ret
lea eax, [0x2d28d00]
mov dword [esp], eax
call fcn.02aeb620
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [0x311e9a0]
test eax, eax
jne 0x2c7910c
mov eax, dword [esp + 0x78]
mov dword [edi], eax
jmp 0x2c79115
mov eax, dword [esp + 0x78]
call fcn.02b3e880
mov dword [edi + 0xc], 2
lea eax, [0x2d3f2ba]
mov dword [edi + 8], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [0x2da46e4]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edi
add esp, 0x74
ret
lea eax, [0x2d28d00]
mov dword [esp], eax
call fcn.02aeb620
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [0x311e9a0]
test eax, eax
jne 0x2c7917e
mov eax, dword [esp + 0x78]
mov dword [edi], eax
jmp 0x2c79187
mov eax, dword [esp + 0x78]
call fcn.02b3e880
mov dword [edi + 0xc], 2
lea eax, [0x2d3f2ba]
mov dword [edi + 8], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [0x2da46e4]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edi
add esp, 0x74
ret
mov eax, 0xea0ea0eb
imul edx
mov eax, dword [esp + 0x44]
add edx, eax
sar edx, 5
mov eax, dword [esp + 0x3c]
add eax, 0x24
mov dword [esp + 0x44], edx
mov dword [esp + 0x3c], eax
cmp edx, 0x1c7
jg 0x2c791c5
jmp 0x2c78da0
lea eax, [0x2d28d00]
mov dword [esp], eax
call fcn.02aeb620
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x7c]
mov dword [edi + 4], eax
mov eax, dword [0x311e9a0]
test eax, eax
jne 0x2c7921c
mov eax, dword [esp + 0x78]
mov dword [edi], eax
jmp 0x2c79225
mov eax, dword [esp + 0x78]
call fcn.02b3e880
mov dword [edi + 0xc], 2
lea eax, [0x2d3f2ba]
mov dword [edi + 8], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
lea eax, [0x2da46e4]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], edi
add esp, 0x74
ret
mov eax, edi
mov ecx, esi
call fcn.02b3e960
mov eax, edx
mov ecx, ebp
call fcn.02b3e960
call fcn.02b11730
call fcn.02b11730
mov eax, esi
mov ecx, ebx
call fcn.02b3e900
mov dword [eax + edi*4], ebp
mov ebp, dword [esp + 0x78]
mov ebp, dword [esp + 0x7c]
mov edi, ebx
mov ebx, dword [esp + 0x78]
cmp esi, ecx
jge 0x2c79339
mov dword [esp + 0x2c], edi
movzx ebp, byte [ebx + esi]
cmp ebp, 0x80
jge 0x2c792b4
inc esi
jmp 0x2c792e8
mov dword [esp + 0x30], edx
mov dword [esp + 0x6c], eax
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.02b37c50
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0x2c]
lea ebx, [edi + 1]
cmp edx, ebx
jae 0x2c79288
mov dword [esp + 0x24], ebp
mov dword [esp + 0x4c], esi
lea ecx, [0x2d0de00]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.02b27650
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea ebx, [ecx + 1]
mov ecx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x2c]
jmp 0x2c79288
mov ecx, edi
jmp 0x2c78cc4
call fcn.02b3e920
nop
call fcn.02b3d440
jmp fcn.02c78b40