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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x7c]
cmp eax, dword [ecx + 8]
jbe 0x2c2664c
sub esp, 0xfc
mov eax, 0
mov dword [esp + 0xec], eax
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], eax
mov byte [esp + 0x2b], 0
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
mov eax, dword [esp + 0x100]
mov dword [esp], eax
mov ecx, dword [esp + 0x104]
mov dword [esp + 4], ecx
call fcn.02c24e50
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x114], ecx
mov dword [esp + 0x118], edx
test ebx, ebx
jne 0x2c25e73
mov dword [esp + 0x6c], eax
lea ecx, [0x2d5a37c]
mov dword [esp + 0xf8], ecx
mov dword [esp + 0xf4], eax
mov byte [esp + 0x2b], 1
lea edi, [esp + 0xc0]
xor eax, eax
call fcn.02b3eb15
mov dword [esp + 0xc0], 0x2c
mov ecx, dword [esp + 0x104]
mov edx, dword [ecx + 0x28]
mov ebx, dword [ecx + 0x24]
test edx, edx
jne 0x2c25e3d
mov dword [esp + 0x54], 0
mov dword [esp + 0x54], 1
mov edx, 1
lea ebx, [esp + 0x54]
mov dword [esp + 0x38], edx
mov dword [esp + 0x7c], ebx
lea eax, [0x2d048c0]
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 + 0x7c]
mov edx, dword [esp + 0x38]
mov ebx, edx
xor ebp, ebp
xor esi, esi
jmp 0x2c25eb2
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
add esp, 0xfc
ret
mov eax, dword [esp + 0x50]
inc eax
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x38]
mov edx, ebp
mov ebp, eax
mov eax, ecx
mov ecx, dword [esp + 0x7c]
cmp ebp, ebx
jge 0x2c26091
mov ebx, dword [ecx + ebp*4]
test ebx, ebx
je 0x2c2608d
mov dword [esp + 0x50], ebp
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x30], edx
mov dword [esp + 0x70], eax
mov dword [esp + 0x2c], esi
mov eax, dword [0x30f6630]
lea ecx, [0x2d0f6a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.02aee230
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
movzx edx, byte [esp + 0x10]
test dl, dl
je 0x2c25f80
test ecx, ecx
jbe 0x2c26638
mov edx, dword [esp + 0x2c]
lea ebx, [edx + 1]
mov ebp, dword [esp + 0x30]
cmp ebp, ebx
jb 0x2c25f24
mov ecx, dword [esp + 0x70]
jmp 0x2c25f65
mov dword [esp + 0x74], eax
lea eax, [0x2d048c0]
mov dword [esp], eax
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
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, eax
mov ebp, edx
mov eax, dword [esp + 0x74]
mov edx, dword [esp + 0x2c]
mov esi, ebx
mov ebx, dword [0x311e9a0]
lea edi, [ecx + edx*4]
test ebx, ebx
jne 0x2c25f79
mov dword [ecx + edx*4], eax
jmp 0x2c25f8c
call fcn.02b3e880
jmp 0x2c25f8c
mov esi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x30]
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x3c]
cmp edx, 1
jne 0x2c25e9b
mov edx, dword [0x30f1e7c]
mov eax, dword [str.1.3.6.1.4.1.311.10.3.3]
test edx, edx
jbe 0x2c2662f
lea edx, [esi + 1]
cmp ebp, edx
jae 0x2c25ff7
mov dword [esp + 0x84], eax
mov dword [esp + 0x4c], esi
lea eax, [0x2d048c0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.02b27650
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x84]
mov esi, dword [esp + 0x4c]
mov ebx, dword [0x311e9a0]
lea edi, [ecx + esi*4]
test ebx, ebx
jne 0x2c26009
mov dword [ecx + esi*4], eax
jmp 0x2c2600e
call fcn.02b3e880
mov ebx, dword [0x30f1e8c]
mov eax, dword [str.2.16.840.1.113730.4.1]
test ebx, ebx
jbe 0x2c26626
lea ebx, [edx + 1]
cmp ebp, ebx
jae 0x2c2606c
mov dword [esp + 0x58], edx
mov dword [esp + 0x84], eax
lea eax, [0x2d048c0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.02b27650
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x58]
mov esi, ebx
mov ebx, dword [0x311e9a0]
lea edi, [ecx + edx*4]
test ebx, ebx
jne 0x2c26083
mov dword [ecx + edx*4], eax
jmp 0x2c25e9b
call fcn.02b3e880
jmp 0x2c25e9b
xor esi, esi
xor eax, eax
test eax, eax
je 0x2c260b8
mov dword [esp + 0xc4], 1
mov dword [esp + 0xc8], esi
test esi, esi
jbe 0x2c2661d
mov dword [esp + 0xcc], eax
jmp 0x2c260d9
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov ecx, dword [esp + 0x104]
lea esi, [ecx + 0x10]
mov dword [esp + 0x94], esi
lea edi, [esp + 0xac]
call fcn.02b3effe
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0xb0]
test edx, 0x80000000
je 0x2c26138
shl edx, 1
mov ebx, ecx
shr ecx, 0x1f
or edx, ecx
mov ecx, ebx
shl ebx, 1
mov ebp, edx
shl edx, 1
shr ebx, 0x1f
or ebx, edx
mov edx, ebx
add ebx, 0xd7b17f80
shr ebp, 0x1f
add edx, 0xd7b17f80
adc ebp, 0xd
jmp 0x2c26146
mov ebx, dword [esp + 0xb4]
mov ebp, dword [esp + 0xb8]
test ebx, ebx
sete dl
test ebp, ebp
sete bl
and ebx, edx
test bl, bl
je 0x2c26161
test ecx, 0x3fffffff
sete cl
jmp 0x2c26163
xor ecx, ecx
xor ecx, 1
test cl, cl
je 0x2c26244
lea edi, [esp + 0x98]
mov esi, dword [esp + 0x94]
call fcn.02b3effe
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0x9c]
test edx, 0x80000000
je 0x2c261c3
shl edx, 1
mov ebx, ecx
shr ecx, 0x1f
or edx, ecx
mov ecx, ebx
shl ebx, 1
mov ebp, edx
shl edx, 1
shr ebx, 0x1f
or ebx, edx
mov edx, ebx
add ebx, 0xd7b17f80
shr ebp, 0x1f
add edx, 0xd7b17f80
adc ebp, 0xd
jmp 0x2c261d1
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0xa4]
mov eax, 0x3b9aca00
mul ebx
and ecx, 0x3fffffff
mov ebx, eax
add eax, ecx
mov esi, eax
add eax, 0x3d1a0000
imul ebp, ebp, 0x3b9aca00
add edx, ebp
mov ebp, ecx
sar ecx, 0x1f
add ebx, ebp
adc edx, ecx
add esi, 0x3d1a0000
adc edx, 0xa1b203eb
mov dword [esp + 4], edx
mov dword [esp], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x64
call fcn.02b383e0
mov ecx, dword [esp + 0x10]
add ecx, 0xd53e8000
mov edx, dword [esp + 0x14]
mov dword [esp + 0x5c], ecx
adc edx, 0x19db1de
mov dword [esp + 0x60], edx
lea eax, [esp + 0x5c]
jmp 0x2c26246
xor eax, eax
mov dword [esp + 0x68], 0
mov ecx, dword [esp + 0x6c]
mov edx, dword [ecx + 0x10]
mov dword [esp], 0
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
lea eax, [esp + 0xc0]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x18], 0
lea eax, [esp + 0x68]
mov dword [esp + 0x1c], eax
call fcn.02b4ba50
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x114], eax
mov dword [esp + 0x118], ecx
test edx, edx
jne 0x2c26423
lea eax, [0x2d5a378]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xec], eax
mov byte [esp + 0x2b], 3
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x100]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x104]
mov dword [esp + 8], eax
call fcn.02c25900
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x90], ebp
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x64], esi
test eax, eax
je 0x2c26321
mov eax, esi
mov edi, ebp
jmp 0x2c263f8
mov dword [esp + 0x80], ecx
mov eax, esi
mov esi, dword [esp + 0x10c]
mov edi, ebp
lea ebp, [esi + 1]
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esp + 0x110]
cmp ecx, ebp
jb 0x2c26358
mov ecx, dword [esp + 0x8c]
jmp 0x2c263b2
mov dword [esp + 0x40], edx
mov dword [esp + 0x48], ebx
lea eax, [0x2d04f80]
mov dword [esp], eax
mov edx, dword [esp + 0x8c]
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.02b27650
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x110], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x48]
mov edi, dword [esp + 0x90]
lea ebp, [esi + 1]
mov dword [esp + 0x10c], ebp
lea ebp, [esi + esi*2]
mov dword [ecx + ebp*4 + 4], edx
mov dword [ecx + ebp*4 + 8], ebx
mov esi, dword [0x311e9a0]
mov edx, ecx
lea ecx, [ecx + ebp*4]
test esi, esi
jne 0x2c263e2
mov ecx, dword [esp + 0x80]
mov dword [edx + ebp*4], ecx
jmp 0x2c263f8
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, dword [esp + 0x80]
call fcn.02b3e880
mov eax, ebx
mov edi, edx
mov ecx, dword [esp + 0x68]
mov edx, dword [ecx + 0x14]
test edx, edx
jbe 0x2c2645f
mov ecx, dword [ecx + 0x18]
test byte [ecx], al
cmp edx, 0x100000
ja 0x2c26613
mov dword [esp + 0x34], edx
mov dword [esp + 0x78], ecx
xor ebx, ebx
jmp 0x2c26527
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
mov byte [esp + 0x2b], 0
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
call fcn.02b4b960
add esp, 0xfc
ret
mov ecx, dword [esp + 0x10c]
test ecx, ecx
jne 0x2c264c8
mov dword [esp + 0x108], 0
mov dword [esp + 0x10c], 0
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], edi
mov dword [esp + 0x118], eax
mov byte [esp + 0x2b], 1
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.02b4b8d0
mov byte [esp + 0x2b], 0
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
call fcn.02b4b960
add esp, 0xfc
ret
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
mov byte [esp + 0x2b], 1
mov eax, dword [esp + 0xec]
mov dword [esp], eax
call fcn.02b4b8d0
mov byte [esp + 0x2b], 0
mov eax, dword [esp + 0xf4]
mov dword [esp], eax
call fcn.02b4b960
add esp, 0xfc
ret
mov ebp, dword [esp + 0x50]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x34]
mov edi, dword [esp + 0x90]
cmp ebx, edx
jge 0x2c2645f
mov dword [esp + 0x50], ebx
mov eax, dword [ecx + ebx*4]
mov edx, dword [esp + 0x100]
mov dword [esp], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x104]
mov dword [esp + 8], eax
call fcn.02c25900
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
test eax, eax
jne 0x2c2650d
mov ebp, dword [esp + 0x10c]
lea esi, [ebp + 1]
mov eax, ecx
mov ecx, dword [esp + 0x108]
mov edi, ebx
mov ebx, dword [esp + 0x110]
cmp ebx, esi
jae 0x2c265de
mov dword [esp + 0x44], edx
mov dword [esp + 0x4c], edi
mov dword [esp + 0x88], eax
lea eax, [0x2d04f80]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
call fcn.02b27650
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x110], eax
mov dword [esp + 0x108], ecx
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x44]
mov edi, dword [esp + 0x4c]
lea ebx, [ebp + 1]
mov dword [esp + 0x10c], ebx
lea ebx, [ebp + ebp*2]
mov dword [ecx + ebx*4 + 4], edx
mov dword [ecx + ebx*4 + 8], edi
mov edx, dword [0x311e9a0]
lea edi, [ecx + ebx*4]
test edx, edx
jne 0x2c26609
mov dword [ecx + ebx*4], eax
jmp 0x2c2650d
call fcn.02b3e880
jmp 0x2c2650d
mov ebx, 0x100000
call fcn.02b3e990
xor eax, eax
mov ecx, esi
call fcn.02b3e900
xor eax, eax
mov ecx, ebx
call fcn.02b3e900
xor eax, eax
mov ecx, edx
call fcn.02b3e900
xor eax, eax
call fcn.02b3e900
nop
call fcn.02b123e0
add esp, 0xfc
ret
call fcn.02b3d440
jmp fcn.02c25d20