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

Disassembly:
sub esp, 0x2d8
push ebx
push ebp
push esi
push edi
push 1
mov edi, ecx
call fcn.100b1cd0
cmp eax, 1
sete al
mov byte [edi + 0x1060], al
mov ecx, dword [edi + 0x70]
cmp ecx, 4
ja 0x100b246b
mov ebx, 0x20
shl ecx, 3
mov eax, ebx
sub eax, dword [edi + 0x48]
cmp eax, ecx
jb 0x100b246b
push 2
mov ecx, edi
call fcn.100b1cd0
mov edx, eax
cmp edx, 2
ja 0x100b246b
mov ecx, dword [edi + 0x70]
cmp ecx, 4
ja 0x100b246b
mov esi, dword [edi + 0x48]
mov eax, ebx
shl ecx, 3
sub eax, esi
cmp eax, ecx
jb 0x100b246b
test edx, edx
jne 0x100b1e17
mov ecx, esi
mov byte [edi + 0x1061], 1
neg ecx
and ecx, 7
shr dword [edi + 0x78], cl
lea eax, [esi + ecx]
mov ecx, edi
mov dword [edi + 0x48], eax
call fcn.100b1c40
cmp byte [edi + 0x1062], 0
mov dword [edi + 0x1058], eax
jne 0x100b245e
mov ecx, edi
call fcn.100b1c40
not eax
movzx eax, ax
cmp dword [edi + 0x1058], eax
pop edi
pop esi
pop ebp
sete al
pop ebx
add esp, 0x2d8
ret
mov byte [edi + 0x1061], 0
cmp edx, 1
jne 0x100b1eae
push 0x90
lea eax, [esp + 0x6c]
push 8
push eax
call fcn.100f83e0
push 0x70
lea eax, [esp + 0x108]
push 9
push eax
call fcn.100f83e0
movaps xmm0, xmmword [str._a_a_a_a_a_a_a_a_a_a_a_a_a_a_a_a]
xor eax, eax
add esp, 0x18
movq qword [esp + 0x178], xmm0
cmp byte [edi + 0x1063], al
movups xmmword [esp + 0x168], xmm0
setne al
mov dword [esp + 0x180], 0x8080808
movaps xmm0, xmmword [0x1011d3c0]
mov dword [esp + 0x184], 0x8080808
movups xmmword [esp + 0x188], xmm0
lea eax, [eax*2 + 0x1e]
movups xmmword [esp + 0x198], xmm0
mov dword [edi + 0x105c], eax
jmp 0x100b1ff6
push 5
mov ecx, edi
call fcn.100b1cd0
add eax, 0x101
mov ecx, edi
push 5
mov dword [esp + 0x14], eax
call fcn.100b1cd0
inc eax
mov ecx, edi
push 4
mov dword [edi + 0x105c], eax
call fcn.100b1cd0
cmp byte [edi + 0x1063], 0
lea ebp, [eax + 4]
jne 0x100b1ef2
cmp dword [edi + 0x105c], 0x1e
ja 0x100b246b
xor esi, esi
movzx ebx, byte [esi + 0x1011d390]
cmp esi, ebp
jae 0x100b1f0a
push 3
mov ecx, edi
call fcn.100b1cd0
jmp 0x100b1f0c
xor al, al
inc esi
mov byte [esp + ebx + 0x54], al
cmp esi, 0x13
jb 0x100b1ef4
mov eax, dword [edi + 0x70]
cmp eax, 4
ja 0x100b246b
mov ecx, 0x20
shl eax, 3
sub ecx, dword [edi + 0x48]
cmp ecx, eax
jb 0x100b246b
push 0
lea eax, [esp + 0x58]
push eax
lea ecx, [edi + 0xfd8]
call fcn.100b0a40
test al, al
je 0x100b246b
mov eax, dword [edi + 0x105c]
mov ecx, edi
mov esi, dword [esp + 0x10]
add eax, esi
push eax
lea eax, [esp + 0x1ac]
push eax
call fcn.100b18f0
test al, al
je 0x100b246b
lea ecx, [edi + 0x48]
call fcn.10018f71
test al, al
jne 0x100b246b
mov byte [esp + 0x187], al
xorps xmm0, xmm0
push esi
lea eax, [esp + 0x1ac]
movq qword [esp + 0x17d], xmm0
push eax
lea eax, [esp + 0x70]
mov dword [esp + 0x189], 0
push eax
movups xmmword [esp + 0x175], xmm0
mov word [esp + 0x191], 0
movups xmmword [esp + 0x194], xmm0
movups xmmword [esp + 0x1a4], xmm0
call fcn.100f7620
push dword [edi + 0x105c]
lea eax, [esp + 0x1b8]
add eax, esi
push eax
lea eax, [esp + 0x19c]
push eax
call fcn.100f7620
add esp, 0x18
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [esp + 0x14], xmm0
movups xmmword [esp + 0x24], xmm0
movups xmmword [esp + 0x34], xmm0
movups xmmword [esp + 0x44], xmm0
nop
movzx eax, byte [esp + ecx + 0x68]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x69]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x6a]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x6b]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x6c]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x6d]
add ecx, 6
inc dword [esp + eax*4 + 0x14]
cmp ecx, 0x120
jb 0x100b2010
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x20]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x24]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x28]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x2c]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x30]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x34]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x38]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x3c]
lea edx, [eax + ecx*2]
mov eax, dword [esp + 0x40]
mov dword [edi + 0x80], edx
mov ecx, edx
mov dword [edi + 0x9c], edx
mov dword [esp + 0x40], edx
add edx, eax
lea ecx, [eax + ecx*2]
mov eax, ecx
add ecx, ecx
shl eax, 4
mov dword [edi + 0x84], eax
mov eax, ecx
sub eax, edx
mov dword [edi + 0xa0], eax
mov eax, dword [esp + 0x44]
add ecx, eax
mov dword [esp + 0x44], edx
add edx, eax
lea eax, [ecx*8]
add ecx, ecx
mov dword [edi + 0x88], eax
mov eax, ecx
sub eax, edx
mov dword [edi + 0xa4], eax
mov eax, dword [esp + 0x48]
add ecx, eax
mov dword [esp + 0x48], edx
add edx, eax
lea eax, [ecx*4]
add ecx, ecx
mov dword [edi + 0x8c], eax
mov eax, ecx
sub eax, edx
mov dword [edi + 0xa8], eax
mov eax, dword [esp + 0x4c]
add ecx, eax
add ecx, ecx
mov dword [esp + 0x4c], edx
add edx, eax
mov dword [edi + 0x90], ecx
mov eax, ecx
sub eax, edx
mov dword [edi + 0xac], eax
mov eax, dword [esp + 0x50]
add ecx, eax
mov dword [edi + 0x94], ecx
mov dword [esp + 0x50], edx
mov dword [edi + 0x98], 0x8000
cmp ecx, 0x8000
ja 0x100b246b
xor ebp, ebp
mov ebx, 1
nop dword [eax + eax]
mov esi, dword [esp + ebx*4 + 0x14]
mov ecx, 0xa
sub ecx, ebx
mov eax, ebp
shr eax, cl
shl esi, cl
mov dword [esp + ebx*4 + 0x14], eax
lea eax, [edi + 0xb0]
push esi
add eax, ebp
push ebx
push eax
call fcn.100f83e0
inc ebx
add esp, 0xc
add ebp, esi
cmp ebx, 0xa
jbe 0x100b2160
xor edx, edx
xor ebp, ebp
movzx ebx, byte [esp + ebp + 0x68]
test ebx, ebx
je 0x100b21f2
mov esi, dword [esp + ebx*4 + 0x14]
lea eax, [esi + 1]
mov dword [esp + ebx*4 + 0x14], eax
cmp ebx, 0xa
jb 0x100b21b7
mov word [edi + esi*2 + 0x4b0], dx
jmp 0x100b21f2
mov ecx, 0xb
lea eax, [edi + 0x4b0]
sub ecx, ebx
shl esi, cl
add eax, esi
mov esi, 1
shl esi, cl
add esi, eax
cmp ebx, 8
jb 0x100b21e0
mov dword [eax], edx
mov dword [esi - 4], edx
jmp 0x100b21f2
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], edx
mov dword [eax + 0xc], edx
add eax, 0x10
cmp eax, esi
jne 0x100b21e0
inc ebp
add edx, 0x10001
cmp ebp, 0x120
jb 0x100b2194
xorps xmm0, xmm0
lea ebp, [edi + 0xedc]
mov dword [esp + 0x10], ebp
xor ecx, ecx
movups xmmword [esp + 0x14], xmm0
movups xmmword [esp + 0x24], xmm0
movups xmmword [esp + 0x34], xmm0
movups xmmword [esp + 0x44], xmm0
movzx eax, byte [esp + ecx + 0x188]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x189]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x18a]
inc dword [esp + eax*4 + 0x14]
movzx eax, byte [esp + ecx + 0x18b]
add ecx, 4
inc dword [esp + eax*4 + 0x14]
cmp ecx, 0x20
jb 0x100b2224
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x20]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x24]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x28]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0x2c]
lea edx, [eax + ecx*2]
mov eax, dword [esp + 0x30]
mov dword [ebp], edx
mov ecx, edx
mov dword [ebp + 0x2c], edx
mov dword [esp + 0x30], edx
add edx, eax
lea ecx, [eax + ecx*2]
mov eax, ecx
add ecx, ecx
shl eax, 8
mov dword [ebp + 4], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x30], eax
mov eax, dword [esp + 0x34]
add ecx, eax
mov dword [esp + 0x34], edx
add edx, eax
mov eax, ecx
add ecx, ecx
shl eax, 7
mov dword [ebp + 8], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x34], eax
mov eax, dword [esp + 0x38]
add ecx, eax
mov dword [esp + 0x38], edx
add edx, eax
mov eax, ecx
add ecx, ecx
shl eax, 6
mov dword [ebp + 0xc], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x38], eax
mov eax, dword [esp + 0x3c]
add ecx, eax
mov dword [esp + 0x3c], edx
add edx, eax
mov eax, ecx
add ecx, ecx
shl eax, 5
mov dword [ebp + 0x10], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x3c], eax
mov eax, dword [esp + 0x40]
add ecx, eax
mov dword [esp + 0x40], edx
add edx, eax
mov eax, ecx
add ecx, ecx
shl eax, 4
mov dword [ebp + 0x14], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x40], eax
mov eax, dword [esp + 0x44]
add ecx, eax
mov dword [esp + 0x44], edx
add edx, eax
lea eax, [ecx*8]
add ecx, ecx
mov dword [ebp + 0x18], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x44], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x48], edx
add ecx, eax
add edx, eax
lea eax, [ecx*4]
add ecx, ecx
mov dword [ebp + 0x1c], eax
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x48], eax
mov eax, dword [esp + 0x4c]
add ecx, eax
add ecx, ecx
mov dword [esp + 0x4c], edx
add edx, eax
mov dword [ebp + 0x20], ecx
mov eax, ecx
sub eax, edx
mov dword [ebp + 0x4c], eax
mov eax, dword [esp + 0x50]
add ecx, eax
mov dword [ebp + 0x24], ecx
mov dword [esp + 0x50], edx
mov dword [ebp + 0x28], 0x8000
cmp ecx, 0x8000
ja 0x100b246b
xor ebx, ebx
mov edi, 1
nop word [eax + eax]
mov esi, dword [esp + edi*4 + 0x14]
mov ecx, 6
sub ecx, edi
mov eax, ebx
shr eax, cl
shl esi, cl
mov dword [esp + edi*4 + 0x14], eax
lea eax, [ebp + 0x50]
push esi
add eax, ebx
push edi
push eax
call fcn.100f83e0
inc edi
add esp, 0xc
add ebx, esi
cmp edi, 6
jbe 0x100b23a0
mov ecx, dword [esp + 0x10]
xor ebx, ebx
xor ebp, ebp
nop word [eax + eax]
movzx edi, byte [esp + ebp + 0x188]
test edi, edi
je 0x100b2452
mov edx, dword [esp + edi*4 + 0x14]
lea eax, [edx + 1]
mov dword [esp + edi*4 + 0x14], eax
cmp edi, 6
jb 0x100b2405
mov byte [edx + ecx + 0xa0], bl
jmp 0x100b2452
mov eax, dword [esp + 0x10]
mov ecx, 6
sub ecx, edi
add eax, 0xa0
shl edx, cl
mov esi, 1
add edx, eax
shl esi, cl
add esi, edx
cmp edi, 4
jb 0x100b2433
movzx eax, bx
mov word [edx], ax
mov word [esi - 2], ax
jmp 0x100b244e
movzx eax, bx
mov ecx, eax
mov word [edx], ax
mov word [edx + 2], cx
mov word [edx + 4], cx
mov word [edx + 6], cx
add edx, 8
cmp edx, esi
jne 0x100b2433
mov ecx, dword [esp + 0x10]
inc ebp
add ebx, 0x101
cmp ebp, 0x20
jb 0x100b23e0
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x2d8
ret
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x2d8
ret