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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x20]
cmp eax, dword [ecx + 8]
jbe 0x2bb82e5
sub esp, 0xa0
mov eax, dword [esp + 0xc0]
mov ebx, dword [esp + 0xb4]
cmp eax, ebx
jg 0x2bb7bce
test ebx, ebx
je 0x2bb7ba0
test eax, eax
je 0x2bb7ba0
cmp eax, 1
je 0x2bb7b24
mov ebp, dword [esp + 0xac]
test ebp, ebp
jle 0x2bb79c1
mov esi, dword [esp + 0xa4]
lea edi, [esi + ebp*4 - 4]
mov edx, dword [esp + 0xb8]
mov ecx, ebx
mov ebx, dword [esp + 0xb0]
lea ebx, [ebx + edx*4 - 4]
cmp ebx, edi
je 0x2bb79f4
test ebp, ebp
jmp 0x2bb79d1
mov ecx, ebx
mov edx, dword [esp + 0xb8]
mov esi, dword [esp + 0xa4]
jle 0x2bb79fa
lea ebx, [esi + ebp*4 - 4]
mov edi, dword [esp + 0xc4]
mov eax, dword [esp + 0xbc]
lea eax, [eax + edi*4 - 4]
cmp eax, ebx
jne 0x2bb7a01
mov eax, dword [esp + 0xc0]
xor ebp, ebp
xor esi, esi
jmp 0x2bb7a08
mov edi, dword [esp + 0xc4]
mov eax, dword [esp + 0xc0]
mov ebx, dword [0x2ec7120]
cmp eax, ebx
jl 0x2bb7a29
mov dword [esp + 0x8c], esi
nop
mov edi, eax
xor eax, eax
mov dword [esp + 0x70], eax
mov eax, edi
jmp 0x2bb7cb3
lea ebx, [eax + ecx]
cmp ebp, ebx
jl 0x2bb7a3b
jae 0x2bb7ac6
jmp 0x2bb7c98
cmp ebx, 1
jne 0x2bb7a83
lea eax, [0x2d0e000]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.02b274d0
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0xb8]
mov ebp, 1
mov ebx, 1
jmp 0x2bb7ac6
mov dword [esp + 0x60], ebx
lea edx, [0x2d0e000]
mov dword [esp], edx
mov dword [esp + 4], ebx
lea edx, [eax + ecx + 4]
mov dword [esp + 0x34], edx
mov dword [esp + 8], edx
call fcn.02b274d0
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0xb8]
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x60]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], ebx
mov dword [esp + 0x88], esi
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov edi, dword [esp + 0xb0]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x20], eax
call fcn.02bb6aa0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x88]
mov edx, eax
jmp 0x2bb7c51
mov eax, dword [esp + 0xbc]
mov eax, dword [eax]
mov ecx, dword [esp + 0xa4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0
call fcn.02bb68f0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], edx
add esp, 0xa0
ret
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], 0
mov eax, dword [esp + 0xac]
mov dword [esp + 0xd0], eax
add esp, 0xa0
ret
mov ecx, dword [esp + 0xa4]
mov dword [esp], ecx
mov ecx, dword [esp + 0xa8]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x20], eax
call fcn.02bb7940
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd0], edx
add esp, 0xa0
ret
mov eax, ebx
test eax, eax
jle 0x2bb7c64
lea ebx, [eax - 1]
cmp edx, ebx
jbe 0x2bb7c8f
mov ebp, dword [ecx + eax*4 - 4]
test ebp, ebp
je 0x2bb7c4f
mov edx, dword [esp + 0x34]
cmp eax, edx
ja 0x2bb7c88
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], edx
add esp, 0xa0
ret
mov ecx, eax
call fcn.02b3e940
mov eax, ebx
mov ecx, edx
call fcn.02b3e900
mov ecx, ebx
mov edx, ebp
call fcn.02b3e940
sar eax, 1
mov esi, dword [esp + 0x70]
inc esi
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x8c]
cmp eax, ebx
jg 0x2bb7ca1
mov ebx, dword [esp + 0x70]
cmp ebx, 0x20
sbb esi, esi
mov ecx, ebx
shl eax, cl
and eax, esi
cmp edx, eax
jb 0x2bb82dd
mov ebx, dword [esp + 0xc4]
cmp ebx, eax
jb 0x2bb82d4
lea esi, [eax + eax*2]
mov ecx, esi
shl esi, 1
mov ebx, dword [esp + 0xb4]
add ebx, edi
cmp esi, ebx
jg 0x2bb7cf3
mov esi, ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x78], ecx
mov dword [esp + 0x4c], ebx
cmp ebp, esi
jl 0x2bb7d24
jb 0x2bb82cb
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x7c]
jmp 0x2bb7da8
cmp esi, 1
jne 0x2bb7d69
lea eax, [0x2d0e000]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.02b274d0
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0xb8]
mov ebp, 1
mov dword [esp + 0x84], esi
mov esi, 1
jmp 0x2bb7da8
mov dword [esp + 0x3c], esi
lea eax, [0x2d0e000]
mov dword [esp], eax
mov dword [esp + 4], esi
lea eax, [esi + 4]
mov dword [esp + 0x38], eax
mov dword [esp + 8], eax
call fcn.02b274d0
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0xb8]
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x84], esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x38], ebp
mov ecx, dword [esp + 0x84]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov esi, dword [esp + 0xbc]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 0xc4]
mov dword [esp + 0x20], edi
call fcn.02bb7190
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x4c]
cmp edx, ecx
jb 0x2bb82c6
mov eax, dword [esp + 0x40]
mov ebx, eax
shl eax, 1
cmp eax, ecx
ja 0x2bb82c1
sub edx, eax
mov esi, edx
neg edx
shl ebx, 3
sar edx, 0x1f
and edx, ebx
mov ebx, dword [esp + 0x84]
add edx, ebx
mov dword [esp], edx
sub ecx, eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.02bb6100
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0x40]
cmp eax, ecx
jg 0x2bb7e57
mov ebx, dword [esp + 0xb4]
cmp eax, ebx
je 0x2bb81f0
mov eax, dword [esp + 0x78]
mov dword [esp], eax
call fcn.02bb91c0
mov eax, dword [esp + 4]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ebx, dword [eax + 8]
mov dword [esp + 0x5c], ebx
nop
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0xb0]
mov edi, ebp
jmp 0x2bb7e89
mov ebp, ebx
mov ebx, dword [esp + 0x5c]
test ebp, ebp
jle 0x2bb7eac
lea ebx, [ebp - 1]
cmp edi, ebx
jbe 0x2bb82b8
mov dword [esp + 0x74], ebp
mov ebp, dword [esi + ebp*4 - 4]
test ebp, ebp
je 0x2bb7e83
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x74]
mov esi, dword [esp + 0xb8]
cmp esi, ebp
jb 0x2bb82af
mov esi, dword [esp + 0xc0]
cmp esi, edi
jb 0x2bb82a6
mov dword [esp + 0x98], eax
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0xc4]
sub edx, edi
mov dword [esp + 0x48], edx
mov ebp, edx
neg edx
shl edi, 2
sar edx, 0x1f
and edx, edi
mov edi, dword [esp + 0xbc]
add edx, edi
mov dword [esp + 0x90], edx
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x40]
sub esi, edx
mov dword [esp + 0x44], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ebp
call fcn.02bb7940
mov eax, dword [esp + 0x24]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x5c], edx
mov ebx, dword [esp + 0x84]
mov dword [esp], ebx
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x40]
mov dword [esp + 0x18], edi
call fcn.02bb7830
nop
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xbc]
mov edx, eax
jmp 0x2bb7f9a
mov eax, ebx
test eax, eax
jle 0x2bb7fb1
lea ebx, [eax - 1]
cmp edx, ebx
jbe 0x2bb829d
mov ebp, dword [ecx + eax*4 - 4]
test ebp, ebp
je 0x2bb7f98
mov ebx, dword [esp + 0xc4]
cmp ebx, eax
jb 0x2bb8294
mov dword [esp + 0x64], eax
mov ebp, dword [esp + 0xb0]
mov esi, dword [esp + 0xb4]
mov edi, dword [esp + 0xb8]
jmp 0x2bb8165
mov dword [esp + 0x94], edi
mov edx, dword [esp + 0x9c]
mov dword [esp], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ebx
call fcn.02bb7940
mov eax, dword [esp + 0x24]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x5c], edx
mov ebx, dword [esp + 0x84]
mov dword [esp], ebx
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x68]
mov dword [esp + 0x18], edi
call fcn.02bb7830
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x20], edx
call fcn.02bb7940
mov eax, dword [esp + 0x24]
mov dword [esp + 0x9c], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x58], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x5c], edx
mov ebx, dword [esp + 0x84]
mov dword [esp], ebx
mov ebp, dword [esp + 0x4c]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x40]
add edi, esi
mov dword [esp + 0x68], edi
mov dword [esp + 0x18], edi
call fcn.02bb7830
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0xb4]
mov ebx, dword [esp + 0xb8]
mov ebp, dword [esp + 0x9c]
mov esi, dword [esp + 0x58]
mov edi, dword [esp + 0x5c]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xc4]
mov ebp, dword [esp + 0xb0]
mov esi, edx
mov edi, dword [esp + 0xb8]
mov edx, dword [esp + 0x68]
cmp esi, edx
jle 0x2bb81cc
jb 0x2bb828b
mov dword [esp + 0x68], edx
sub edi, edx
mov dword [esp + 0x54], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
shl edx, 2
sar edi, 0x1f
and edi, edx
add edi, ebp
mov edx, ebp
mov ebp, dword [esp + 0x68]
sub esi, ebp
mov ebp, dword [esp + 0x40]
cmp ebp, esi
jge 0x2bb819d
mov esi, ebp
jmp 0x2bb81a3
mov ebp, esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x50], ebp
jmp 0x2bb8255
mov ebx, dword [esp + 0xc4]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x40]
mov esi, dword [esp + 0x54]
cmp ebp, esi
jbe 0x2bb7fde
jmp 0x2bb8279
nop
lea eax, [0x30f7aa0]
mov dword [esp], eax
lea eax, [0x2d3d040]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 8], eax
call fcn.02b45f00
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x84]
mov eax, ebx
jmp 0x2bb8201
mov ebx, esi
test ebx, ebx
jle 0x2bb8214
lea esi, [ebx - 1]
cmp esi, eax
jae 0x2bb823f
mov edi, dword [ebp + ebx*4 - 4]
test edi, edi
je 0x2bb81ff
mov edx, dword [esp + 0x38]
cmp ebx, edx
ja 0x2bb8238
mov dword [esp + 0xc8], ebp
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xd0], edx
add esp, 0xa0
ret
mov ecx, ebx
call fcn.02b3e940
mov ecx, eax
mov eax, esi
call fcn.02b3e900
mov ebx, dword [esp + 0xc4]
mov ebp, esi
mov esi, dword [esp + 0x40]
mov dword [esp + 0x6c], ebp
test ebp, ebp
jle 0x2bb81bb
lea esi, [ebp - 1]
mov ebx, dword [esp + 0x50]
cmp ebx, esi
jbe 0x2bb8282
mov ebp, dword [edi + ebp*4 - 4]
test ebp, ebp
je 0x2bb8248
jmp 0x2bb81ac
mov ecx, ebp
mov edx, esi
call fcn.02b3e940
mov eax, esi
mov ecx, ebx
call fcn.02b3e900
mov eax, edx
mov ecx, esi
call fcn.02b3e960
mov ecx, eax
mov edx, ebx
call fcn.02b3e940
mov eax, ebx
mov ecx, edx
call fcn.02b3e900
mov eax, edi
mov ecx, esi
call fcn.02b3e960
mov ecx, ebp
mov edx, esi
call fcn.02b3e940
mov eax, ebx
mov ecx, edi
call fcn.02b3e900
call fcn.02b3e960
call fcn.02b3e940
mov ecx, esi
mov edx, ebp
call fcn.02b3e940
mov ecx, eax
mov edx, ebx
call fcn.02b3e940
mov ecx, eax
call fcn.02b3e940
nop
call fcn.02b3d440
jmp fcn.02bb7940