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

Disassembly:
sub esp, 0x2a4
mov eax, dword [0x101366b4]
xor eax, esp
mov dword [esp + 0x2a0], eax
mov ecx, dword [esp + 0x2bc]
mov edx, dword [esp + 0x2c0]
mov eax, dword [esp + 0x2b0]
push ebx
mov ebx, dword [esp + 0x2bc]
push ebp
xor ebp, ebp
mov dword [esp + 0x28], ecx
push esi
mov esi, dword [esp + 0x2c0]
mov dword [ecx], ebp
mov dword [esp + 0x3c], edx
mov dword [esp + 0x28], ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x1c], ebp
mov dword [edx], ebp
push edi
mov edi, ebp
test esi, esi
je 0x10105de1
cmp word [esi], bp
je 0x10105de1
push ebp
push ebp
mov ebp, dword [esp + 0x2c0]
lea ecx, [esp + 0x3c]
push ecx
push 0x38
lea ecx, [esp + 0x88]
push ecx
push 0xffffffffffffffff
push eax
push dword [esp + 0x2d8]
push ebp
call fcn.100c6588
test eax, eax
js 0x10105de3
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x1010581b
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x40]
and dword [ecx], edi
and dword [eax], edi
xor esi, esi
jmp 0x10105db3
imul edi, eax, 0x14
push edi
call fcn.10117fe0
mov dword [esp + 0x14], eax
pop ecx
test eax, eax
jne 0x10105839
mov esi, 0xfffffc0d
mov edi, eax
jmp 0x10105db3
push edi
mov edi, eax
push 0
push edi
call fcn.10117f50
add esp, 0xc
mov dword [esp + 0x54], esi
lea eax, [esi + ebx*2]
mov dword [esp + 0x50], esi
mov dword [esp + 0x58], eax
mov ebx, edi
xor eax, eax
mov dword [esp + 0x48], ebp
push 0x40
pop ecx
cmp word [esi], cx
mov esi, dword [esp + 0x80]
sete al
mov dword [esp + 0x6c], 0x5c
mov dword [esp + 0x44], eax
mov dword [esp + 0x1c], esi
test eax, eax
je 0x101058e3
lea eax, [esp + 0x48]
push eax
call fcn.101067f3
mov eax, dword [esp + 0x5c]
push 0x40
pop ecx
cmp word [eax], cx
jne 0x10105daa
mov edx, dword [esp + 0x64]
lea esi, [esp + 0x78]
add eax, 2
dec edx
mov dword [ebx], eax
lea eax, [ebx + 0x10]
push eax
sub esp, 0x38
mov dword [ebx + 8], edx
push 0xe
pop ecx
mov edi, esp
push edx
push dword [ebx]
rep movsd dword es:[edi], dword [esi]
push ebp
call fcn.10106008
test eax, eax
je 0x10105daa
lea eax, [esp + 0x48]
push eax
call fcn.101067f3
cmp eax, 0x3d
jne 0x10105daa
mov esi, dword [esp + 0x1c]
push 0x1000f144
lea eax, [esp + 0x4c]
push eax
call fcn.1010667f
cmp eax, 0x102
jne 0x10105daa
mov eax, dword [esp + 0x5c]
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x64]
mov dword [ebx + 0xc], eax
lea eax, [esp + 0x48]
add ebx, 0x14
push eax
mov dword [esp + 0x3c], ebx
call fcn.101067f3
cmp eax, 0x2c
jne 0x10105931
dec esi
mov dword [esp + 0x1c], esi
je 0x10105931
mov eax, dword [esp + 0x44]
jmp 0x1010587e
lea eax, [esp + 0x2c]
push eax
push 0xfa0
call fcn.100ca9f1
mov esi, eax
test esi, esi
js 0x10105daf
imul eax, dword [esp + 0x80], 0x108
push eax
mov dword [esp + 0x40], eax
call fcn.10117fe0
pop ecx
mov ecx, dword [esp + 0x30]
mov edi, eax
mov dword [ecx], edi
test edi, edi
jne 0x10105976
mov esi, 0xfffffc0d
jmp 0x10105daf
xor ebx, ebx
push ebx
push Ordinal_2
push dword [esp + 0x84]
mov dword [esp + 0x30], ebx
push ebp
call fcn.1003cb30
mov esi, eax
test esi, esi
js 0x10105daf
jmp 0x10105d59
dec eax
push ebp
mov dword [esp + 0x84], eax
call fcn.10037eb0
push 0
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x3c]
push eax
push 0x200
lea eax, [esp + 0xc0]
push eax
push dword [esp + 0x9c]
push dword [esp + 0x94]
push ebp
call fcn.1003cec0
mov esi, eax
test esi, esi
js 0x10105daf
mov eax, dword [esp + 0x34]
and eax, 0xfffffffe
cmp eax, 0x200
jae 0x10105dfe
xor ecx, ecx
push ecx
push ecx
mov word [esp + eax + 0xb8], cx
lea eax, [esp + 0x3c]
push eax
push 4
lea eax, [esp + 0x24]
push eax
push dword [esp + 0xa4]
push dword [esp + 0x94]
push ebp
call fcn.1003cec0
mov esi, eax
test esi, esi
js 0x10105daf
push 0
push 0
lea eax, [esp + 0x3c]
push eax
push 4
lea eax, [esp + 0x84]
push eax
push dword [esp + 0xb0]
push dword [esp + 0x94]
push ebp
call fcn.1003cec0
mov esi, eax
test esi, esi
js 0x10105daf
push 0
push 1
push dword [esp + 0x84]
push ebp
call fcn.1003cb30
mov esi, eax
lea eax, [esp + 0x38]
push eax
push dword [esp + 0x14]
lea eax, [esp + 0xb8]
push dword [esp + 0x4c]
push ebx
push eax
call fcn.10106146
mov ebx, dword [esp + 0x38]
cmp dword [ebx + 0xc], 4
jne 0x10105ab2
push 4
push 0x1000410c
push dword [ebx + 4]
call fcn.10116290
add esp, 0xc
test eax, eax
jne 0x10105ab2
and dword [edi], eax
jmp 0x10105d4d
cmp dword [ebx + 0xc], 0
je 0x10105d3d
push 7
pop eax
cmp dword [ebx + 0xc], eax
jne 0x10105add
push eax
push 0x10011e10
push dword [ebx + 4]
call fcn.10116290
add esp, 0xc
test eax, eax
je 0x10105d3d
mov ecx, dword [ebx + 0xc]
mov eax, dword [esp + 0x14]
add ecx, ecx
mov dword [esp + 0x34], ecx
test eax, eax
jne 0x10105b01
mov eax, 0x1fe
cmp eax, ecx
sbb eax, eax
and eax, 2
add eax, 0xa
mov dword [esp + 0x14], eax
push eax
call fcn.100cc1d6
cmp al, 8
mov byte [esp + 0x1b], al
push 7
setne cl
pop edx
dec cl
and cl, 8
cmp al, 7
movzx ecx, cl
lea eax, [esp + 0x70]
cmove ecx, edx
movzx ecx, cl
push ecx
push 0
push 0
push eax
push dword [esp + 0x3c]
push dword [ebx + 0xc]
push dword [ebx + 4]
xor ebx, ebx
push ebx
push ebp
call fcn.100d1f51
mov esi, eax
test esi, esi
js 0x10105daf
lea eax, [esp + 0x48]
push eax
push dword [esp + 0x74]
push dword [esp + 0x34]
push dword [esp + 0x28]
call fcn.10116ab0
mov esi, eax
test esi, esi
je 0x10105b97
jg 0x10105b70
cmp esi, 0xffff8008
jge 0x10105b95
cmp esi, 0xd
jne 0x10105b7f
push ebx
push ebx
push ebx
push 0xffffdfd1
jmp 0x10105b87
push esi
push ebx
push ebx
push 0xffffe06c
push ebx
push ebx
push ebx
push ebp
call fcn.100378e0
mov esi, 0xfffff42a
test esi, esi
js 0x10105daf
mov edx, dword [esp + 0x48]
mov ecx, edx
mov bl, byte [esp + 0x1b]
and ecx, 0x7fff
movzx eax, bl
cmp ecx, eax
je 0x10105c0e
movzx eax, bl
push eax
lea eax, [esp + 0x4c]
push eax
push dword [esp + 0x24]
call fcn.10117650
mov esi, eax
test esi, esi
je 0x10105c04
jg 0x10105bd6
cmp esi, 0xffff8008
jge 0x10105c02
cmp esi, 0xd
jne 0x10105bea
xor ebx, ebx
push ebx
push ebx
push ebx
push 0xffffdfd1
push ebx
push ebx
push ebx
jmp 0x10105bf7
push esi
xor eax, eax
push eax
push eax
push 0xffffe06c
push eax
push eax
push eax
push ebp
call fcn.100378e0
mov esi, 0xfffff42a
test esi, esi
js 0x10105daf
mov edx, dword [esp + 0x48]
and edx, 0x7fff
cmp edx, 8
je 0x10105c26
cmp edx, 0xc
je 0x10105c26
xor ecx, ecx
mov dword [esp + 0x28], ecx
jmp 0x10105ca0
push dword [esp + 0x54]
call sub.OLEAUT32.dll_SysAllocStringByteLen
mov ebx, eax
mov eax, 0x1fe
cmp ebx, eax
jbe 0x10105c81
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x3c]
and ecx, 0x7fff
sub ecx, 8
neg ecx
sbb ecx, ecx
add eax, ebx
push eax
mov dword [esp + 0x40], eax
add ecx, 0xc
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], ecx
push dword [eax]
call fcn.10118e34
pop ecx
pop ecx
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
test eax, eax
je 0x1010596c
lea ecx, [eax + ebx]
mov dword [esp + 0x28], ecx
jmp 0x10105c9c
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x28]
and eax, 0x7fff
sub eax, 8
neg eax
sbb eax, eax
add eax, 0xa
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x14]
push 4
mov dword [edi], eax
mov eax, dword [esp + 0x18]
pop edx
add edi, edx
cmp eax, 9
je 0x10105ce7
cmp eax, 0xa
je 0x10105ce7
cmp eax, 0xb
je 0x10105cd3
cmp eax, 0x11
je 0x10105cd3
cmp eax, 0xc
je 0x10105cd3
and dword [esp + 0x20], 0
lea ebx, [esp + 0x20]
jmp 0x10105cfe
mov eax, dword [esp + 0x20]
mov ebx, edi
mov dword [edi], eax
add edi, edx
mov dword [edi], ecx
add edi, edx
mov eax, dword [esp + 0x14]
jmp 0x10105d04
mov eax, dword [esp + 0x20]
mov ebx, edi
mov dword [edi], eax
mov eax, 0x1fe
mov dword [esp + 0x20], eax
add edi, edx
mov eax, dword [esp + 0x14]
mov ecx, edi
mov dword [esp + 0x28], ecx
push ebx
push ecx
push eax
lea eax, [esp + 0x54]
push eax
push dword [esp + 0x2c]
call fcn.10097e1c
cmp dword [esp + 0x14], 0xb
je 0x10105d50
cmp dword [esp + 0x14], 0x11
je 0x10105d50
cmp dword [esp + 0x14], 0xc
je 0x10105d50
mov eax, dword [ebx]
add eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
lea edi, [edi + eax*4]
jmp 0x10105d50
test dword [esp + 0x74], 0x100000
je 0x10105d89
mov dword [edi], 0xfd
add edi, 4
mov ebx, dword [esp + 0x24]
inc ebx
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x80]
test eax, eax
jne 0x1010599e
dec eax
mov dword [esp + 0x80], eax
xor eax, eax
cmp esi, 0xfffff9bd
cmove esi, eax
mov eax, dword [esp + 0x30]
sub edi, dword [eax]
mov eax, dword [esp + 0x40]
mov dword [eax], edi
jmp 0x10105daf
xor eax, eax
push eax
push eax
push eax
push 0xffffdfab
push eax
push eax
lea eax, [esp + 0xc8]
push eax
push ebp
call fcn.100378e0
mov esi, 0xfffff3f4
jmp 0x10105daf
mov esi, 0xfffff23e
mov edi, dword [esp + 0x10]
push dword [esp + 0x7c]
push ebp
call fcn.1003c120
or dword [esp + 0x7c], 0xffffffff
cmp dword [esp + 0x2c], 0
je 0x10105dd2
push dword [esp + 0x2c]
call fcn.100cac4a
test edi, edi
je 0x10105ddd
push edi
call fcn.10117f0a
pop ecx
mov eax, esi
jmp 0x10105de3
xor eax, eax
mov ecx, dword [esp + 0x2b0]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10117cfd
add esp, 0x2a4
ret 0x1c
call fcn.10117992
int3