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

Disassembly:
sub esp, 0x38
mov eax, dword [esp + 0x40]
test eax, 0x1000
je 0x2b17f44
mov ecx, dword [esp + 0x44]
jmp 0x2b17f54
mov ecx, dword [esp + 0x44]
test ecx, 0x1000
jne 0x2b17f54
cmp ecx, eax
jne 0x2b17f92
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
lea edx, [0x2b181e0]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], ecx
lea edx, [esp + 0x2c]
mov dword [esp], edx
call fcn.02b3d330
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
xor edx, edx
xor ebx, ebx
xor ebp, ebp
jmp 0x2b17fab
mov esi, dword [esp + 0x20]
lea edx, [esi + 1]
mov ecx, dword [esp + 0x44]
mov ebp, eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebp
mov dword [esp + 0x20], edx
mov esi, dword [esp + 0x3c]
test byte [esi], al
lea edi, [esi + 0x48]
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.02ae1ed0
movzx eax, byte [esp + 0xc]
test al, al
jne 0x2b1808d
mov eax, dword [esp + 0x40]
cmp eax, 4
jne 0x2b17ff5
mov ecx, dword [esp + 0x3c]
cmp dword [ecx + 0x48], 1
jne 0x2b17ff9
jmp 0x2b181c7
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
test edx, edx
je 0x2b1800b
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
jmp 0x2b18021
call fcn.02b3f7c0
mov eax, dword [esp]
add eax, 0x1388
mov ebx, dword [esp + 4]
adc ebx, 0
mov ebp, eax
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebx
call fcn.02b3f7c0
mov eax, dword [esp + 0x18]
cmp dword [esp], eax
setb cl
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0x1c]
cmp ebx, edx
sete dl
xchg ebp, ebx
setg bl
xchg ebp, ebx
and edx, ecx
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x2b18065
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
xor ebp, ebp
jmp 0x2b181b4
nop
lea eax, [0x2d5a324]
mov dword [esp], eax
call fcn.02b3d330
call fcn.02b3f7c0
mov eax, dword [esp]
add eax, 0x9c4
mov ebx, dword [esp + 4]
adc ebx, 0
jmp 0x2b17f9a
mov eax, dword [esp + 0x40]
cmp eax, 2
jne 0x2b180b1
mov ecx, dword [esp + 0x3c]
movzx edx, byte [ecx + 0x71]
test dl, 7
jne 0x2b180a7
mov byte [ecx + 0x70], 1
movzx edx, byte [ecx + 0x71]
inc edx
mov byte [ecx + 0x71], dl
jmp 0x2b180b5
mov ecx, dword [esp + 0x3c]
movzx edx, byte [ecx + 0x70]
test dl, dl
je 0x2b18181
nop
call fcn.02b3f7c0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 4]
mov dword [esp + 0x10], ecx
mov edx, dword [esp]
mov ebx, dword [esp + 0x40]
cmp ebx, 1
jne 0x2b1812b
mov ebx, dword [esp + 0x3c]
mov ebp, dword [ebx + 0x74]
mov esi, edx
sub edx, ebp
mov dword [esp + 0x28], edx
mov edi, dword [ebx + 0x7c]
add edx, edi
mov ecx, dword [ebx + 0x80]
mov dword [esp + 0x24], ecx
mov ecx, dword [ebx + 0x78]
mov dword [ebx + 0x7c], edx
mov edx, esi
sub esi, ebp
sbb eax, ecx
mov ecx, dword [esp + 0x28]
add ecx, edi
mov ecx, dword [esp + 0x24]
adc eax, ecx
mov dword [ebx + 0x80], eax
mov dword [ebx + 0x74], 0
mov dword [ebx + 0x78], 0
jmp 0x2b1812f
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x44]
cmp eax, 1
jne 0x2b18144
mov eax, dword [esp + 0x10]
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x74], edx
jmp 0x2b18181
cmp eax, 2
jne 0x2b18181
mov byte [ebx + 0x70], 0
mov eax, dword [ebx + 0x7c]
mov ecx, dword [ebx + 0x80]
lea edx, [0x30f9160]
mov dword [esp], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
call fcn.02ae7fc0
mov eax, dword [esp + 0x3c]
mov dword [eax + 0x7c], 0
mov dword [eax + 0x80], 0
add esp, 0x38
ret
mov dword [esp + 0x14], ebp
mov dword [esp], 1
call fcn.02b3e4b0
mov eax, dword [esp + 0x14]
lea ebp, [eax + 1]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x1c]
cmp ebp, 0xa
jge 0x2b17f9a
cmp dword [edx + 0x48], ecx
jne 0x2b18185
jmp 0x2b17f9a
lea eax, [0x2d50556]
mov dword [esp], eax
mov dword [esp + 4], 0x31
call fcn.02b13bb0
nop
int3