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

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0x14]
sub esp, 0x20
push ebx
push esi
xor ebx, ebx
push edi
test eax, eax
je 0x100b0193
mov dword [eax], ebx
mov edi, dword [ebp + 8]
mov edx, dword [edi + 0x14]
mov esi, dword [edi + 0x24]
mov ecx, dword [edi + 0x10]
mov eax, dword [edi + 0x20]
cmp edx, esi
jb 0x100b01b3
ja 0x100b01ac
cmp ecx, eax
jb 0x100b01b3
xor eax, eax
jmp 0x100b05f9
sub eax, ecx
sbb esi, edx
cmp ebx, esi
jb 0x100b01cb
ja 0x100b01c4
mov esi, dword [ebp + 0x10]
cmp esi, eax
jbe 0x100b01ce
mov esi, eax
mov dword [ebp + 0x10], esi
jmp 0x100b01ce
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x100b01ac
mov dword [ebp - 4], ebx
mov ebx, dword [edi + 0x6c]
mov eax, ebx
shr eax, 1
je 0x100b020a
mov edi, dword [edi + 0x68]
mov esi, dword [edi + eax*4]
cmp edx, dword [esi + 0x3c]
ja 0x100b01f7
jb 0x100b01f0
cmp ecx, dword [esi + 0x38]
jae 0x100b01f7
mov esi, dword [ebp - 4]
mov ebx, eax
jmp 0x100b01fc
mov esi, eax
mov dword [ebp - 4], esi
lea eax, [ebx + esi]
shr eax, 1
cmp eax, esi
jne 0x100b01e1
mov edi, dword [ebp + 8]
jmp 0x100b020d
mov esi, dword [ebp - 4]
mov eax, dword [edi + 0x68]
mov ebx, dword [eax + esi*4]
sub ecx, dword [ebx + 0x38]
mov esi, dword [ebx + 0x44]
sbb edx, dword [ebx + 0x3c]
mov eax, dword [ebx + 0x40]
mov dword [ebp - 8], esi
cmp edx, esi
mov esi, dword [ebp + 0x10]
jb 0x100b0239
ja 0x100b022f
cmp ecx, eax
jb 0x100b0239
mov eax, 0x80004005
jmp 0x100b05f9
sub eax, ecx
sbb dword [ebp - 8], edx
xor edi, edi
cmp edi, dword [ebp - 8]
jb 0x100b0250
ja 0x100b024b
cmp esi, eax
jbe 0x100b0250
mov esi, eax
mov dword [ebp + 0x10], esi
mov edi, dword [ebx + 0x34]
mov eax, dword [ebx + 0x30]
mov dword [ebp - 8], edi
cmp edx, edi
mov edi, dword [ebp + 8]
jb 0x100b026f
ja 0x100b0266
cmp ecx, eax
jb 0x100b026f
mov byte [edi + 0x32], 1
jmp 0x100b05f6
sub eax, ecx
sbb dword [ebp - 8], edx
xor edi, edi
cmp edi, dword [ebp - 8]
mov edi, dword [ebp + 8]
jb 0x100b0289
ja 0x100b0284
cmp esi, eax
jbe 0x100b0289
mov esi, eax
mov dword [ebp + 0x10], esi
xor eax, eax
cmp byte [ebx + 4], al
jne 0x100b05b4
cmp byte [ebx], al
je 0x100b05b4
cmp dword [ebx + 0x1c], eax
je 0x100b05b4
cmp byte [ebx + 3], al
jne 0x100b05b4
cmp byte [ebx + 5], al
je 0x100b0324
mov eax, dword [ebx + 0x48]
add eax, ecx
mov dword [ebp + 0x10], eax
mov eax, dword [ebx + 0x4c]
mov ecx, dword [ebp + 0x10]
adc eax, edx
cmp ecx, dword [ebx + 0x20]
jne 0x100b02cd
cmp eax, dword [ebx + 0x24]
je 0x100b02de
push eax
push ecx
mov ecx, ebx
call fcn.100b0661
test eax, eax
jne 0x100b05f9
lea edx, [ebp + 0x10]
push edx
xor eax, eax
push esi
push dword [ebp + 0xc]
mov dword [ebp + 0x10], eax
mov eax, dword [ebx + 0x1c]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xc]
mov ecx, dword [ebp + 0x10]
mov edx, eax
test edx, edx
jne 0x100b0305
test ecx, ecx
jne 0x100b0305
mov byte [edi + 0x30], 1
add dword [ebx + 0x20], ecx
push 0
pop eax
adc dword [ebx + 0x24], eax
add dword [edi + 0x10], ecx
adc dword [edi + 0x14], eax
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x100b031d
mov dword [eax], ecx
mov eax, edx
jmp 0x100b05f9
mov esi, dword [edi + 0x10]
sub esi, dword [ebx + 0x38]
mov edx, dword [edi + 0x14]
mov ecx, dword [ebx + 8]
sbb edx, dword [ebx + 0x3c]
mov eax, esi
mov dword [ebp - 0x10], ecx
call fcn.100b8c30
mov ecx, dword [ebp - 0x10]
mov dword [ebp + 8], eax
xor eax, eax
inc eax
shl eax, cl
mov dword [ebp - 8], edx
mov ecx, eax
lea edx, [eax - 1]
and edx, esi
mov esi, dword [ebp + 0x10]
sub ecx, edx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 4]
cmp esi, ecx
cmova esi, ecx
cmp eax, dword [edi + 0x48]
mov eax, dword [ebp + 8]
mov dword [ebp + 0x10], esi
jne 0x100b037e
cmp eax, dword [edi + 0x40]
jne 0x100b037e
mov ecx, dword [ebp - 8]
cmp ecx, dword [edi + 0x44]
je 0x100b056c
mov ecx, eax
mov eax, dword [ebp - 8]
shrd ecx, eax, 9
shr eax, 9
test eax, eax
ja 0x100b059d
jb 0x100b039d
cmp ecx, dword [ebx + 0x14]
jae 0x100b059d
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + ecx*4]
xor ecx, ecx
cmp dword [eax + 4], ecx
je 0x100b059d
mov ecx, dword [ebp + 8]
mov eax, dword [eax]
and ecx, 0x1ff
mov eax, dword [eax + ecx*4]
test eax, eax
je 0x100b059d
cmp eax, dword [ebx + 0xc]
je 0x100b059d
xor ecx, ecx
shld ecx, eax, 9
shl eax, 9
cmp byte [ebx + 2], 0
je 0x100b0581
cmp eax, dword [ebx + 0x20]
jne 0x100b03ea
cmp ecx, dword [ebx + 0x24]
je 0x100b03fb
push ecx
push eax
mov ecx, ebx
call fcn.100b0661
test eax, eax
jne 0x100b05f9
mov edx, dword [edi + 0x54]
mov ecx, dword [ebx + 0x1c]
lea eax, [ebp - 0xc]
mov esi, 0x200
push eax
mov dword [ebp - 0xc], esi
call fcn.100235ea
mov ecx, dword [ebp - 0xc]
add dword [ebx + 0x20], ecx
push 0
pop edx
adc dword [ebx + 0x24], edx
test eax, eax
jne 0x100b05f9
cmp ecx, esi
jne 0x100b05f6
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 8]
mov esi, dword [edi + 0x54]
lea ecx, [ecx - 9]
call fcn.100b8dc0
cmp dword [esi], eax
jne 0x100b05f6
cmp dword [esi + 4], edx
jne 0x100b05f6
mov esi, dword [esi + 8]
mov dword [ebp - 0x18], esi
cmp esi, 0x80000000
ja 0x100b05f6
lea eax, [esi + 0xc]
cmp eax, 0x200
jbe 0x100b04bf
add eax, 0x1ff
and eax, 0xfffffe00
cmp eax, dword [edi + 0x58]
ja 0x100b05f6
mov edx, dword [edi + 0x54]
mov ecx, dword [ebx + 0x1c]
add eax, 0xfffffe00
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
add edx, 0x200
call fcn.100235ea
mov ecx, dword [ebp - 0x10]
add dword [ebx + 0x20], ecx
push 0
pop edx
adc dword [ebx + 0x24], edx
test eax, eax
jne 0x100b05f9
cmp ecx, dword [ebp - 0xc]
jne 0x100b05f6
mov ecx, dword [edi + 0x74]
xor eax, eax
push eax
mov eax, dword [edi + 0x54]
push esi
add eax, 0xc
push eax
call fcn.10023154
mov edx, dword [ebp - 0x14]
or dword [edi + 0x40], 0xffffffff
or dword [edi + 0x44], 0xffffffff
or dword [edi + 0x48], 0xffffffff
cmp dword [edi + 0x50], edx
jb 0x100b022f
mov ecx, dword [edi + 0x7c]
mov eax, dword [edi + 0x4c]
mov dword [ecx + 0xc], edx
mov dword [ecx + 8], eax
xor esi, esi
mov dword [ecx + 0x10], esi
mov eax, dword [edi + 0x84]
push esi
mov dword [ebp - 0x20], edx
lea edx, [ebp - 0x20]
push edx
push esi
push dword [edi + 0x80]
mov dword [ebp - 0x1c], esi
push dword [edi + 0x78]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
mov ecx, dword [edi + 0x7c]
mov esi, eax
mov eax, dword [ebp - 0x14]
cmp dword [ecx + 0x10], eax
jne 0x100b0548
mov ecx, dword [edi + 0x84]
mov ecx, dword [ecx + 0x10]
call fcn.10084365
push 0
add eax, 2
pop ecx
adc edx, ecx
cmp eax, dword [ebp - 0x18]
jne 0x100b0548
cmp edx, ecx
je 0x100b0551
mov byte [edi + 0x32], 1
test esi, esi
jne 0x100b057d
inc esi
test esi, esi
jne 0x100b057d
mov eax, dword [ebp + 8]
mov dword [edi + 0x40], eax
mov eax, dword [ebp - 8]
mov dword [edi + 0x44], eax
mov eax, dword [ebp - 4]
mov dword [edi + 0x48], eax
jmp 0x100b0324
mov eax, dword [edi + 0x4c]
push esi
add eax, edx
push eax
push dword [ebp + 0xc]
call fcn.100b77a0
jmp 0x100b05d4
mov eax, esi
jmp 0x100b05f9
add eax, edx
push 0
pop edx
adc ecx, edx
cmp eax, dword [ebx + 0x20]
jne 0x100b0596
cmp ecx, dword [ebx + 0x24]
je 0x100b02de
push ecx
push eax
jmp 0x100b02cf
push esi
xor ebx, ebx
push ebx
push dword [ebp + 0xc]
call fcn.100b8b90
add esp, 0xc
add dword [edi + 0x10], esi
adc dword [edi + 0x14], ebx
jmp 0x100b05e0
cmp byte [ebx + 3], 0
je 0x100b05c0
mov byte [edi + 0x31], 1
jmp 0x100b05f6
cmp byte [ebx], 0
je 0x100b05f2
cmp dword [ebx + 0x1c], eax
je 0x100b05f2
push esi
push eax
push dword [ebp + 0xc]
call fcn.100b8b90
add esp, 0xc
add dword [edi + 0x10], esi
push 0
pop eax
adc dword [edi + 0x14], eax
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x100b01ac
mov dword [eax], esi
jmp 0x100b01ac
mov byte [edi + 0x30], 1
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret 0x10