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

Disassembly:
sub esp, 0x70
mov eax, dword [0x101c3584]
xor eax, esp
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x78]
push ebx
push esi
mov esi, ecx
mov ecx, dword [esi + 0x7c]
mov edx, dword [esi + 0x80]
push edi
xor edi, edi
mov dword [esp + 0x48], eax
mov eax, dword [esi + 0x38]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
cmp byte [eax], 0
mov dword [esp + 0x44], esi
mov dword [esp + 0x54], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x30], edi
lea edx, [eax + 0x10]
mov ecx, eax
je 0x101018ea
nop
cmp ecx, edx
je 0x101018ea
inc ecx
cmp byte [ecx], 0
jne 0x101018e0
sub ecx, eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi + 0x44]
cmp byte [ecx], 0
lea edx, [ecx + 0x81]
mov eax, ecx
je 0x1010190a
cmp eax, edx
je 0x1010190a
inc eax
cmp byte [eax], 0
jne 0x10101900
sub eax, ecx
mov ecx, dword [esi + 0x50]
cmp byte [ecx], 0
mov ebx, eax
mov dword [esp + 0x28], ebx
lea edx, [ecx + 0x10]
mov eax, ecx
je 0x1010192a
nop
cmp eax, edx
je 0x1010192a
inc eax
cmp byte [eax], 0
jne 0x10101920
sub eax, ecx
push ebp
mov ebp, eax
mov dword [esp + 0x38], ebp
je 0x10101974
inc ebp
lea eax, [ebp + ebp]
cmp eax, edi
jne 0x10101943
mov eax, 1
push eax
call fcn.1013fbbd
add esp, 4
mov dword [esp + 0x34], eax
cmp eax, edi
jne 0x1010195e
mov edi, 0xc
jmp 0x10101f28
mov ecx, dword [esi + 0x50]
push 2
push ebp
push ecx
push eax
call fcn.100f6ee0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x38], ebp
cmp ebx, edi
je 0x101019b6
inc ebx
lea eax, [ebx + ebx]
cmp eax, edi
jne 0x10101985
mov eax, 1
push eax
call fcn.1013fbbd
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, edi
jne 0x101019a0
mov edi, 0xc
jmp 0x10101f28
mov edx, dword [esi + 0x44]
push 2
push ebx
push edx
push eax
call fcn.100f6ee0
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x2c], ebx
mov eax, dword [esp + 0x20]
cmp eax, edi
je 0x10101a01
inc eax
mov dword [esp + 0x20], eax
add eax, eax
cmp eax, edi
jne 0x101019ce
mov eax, 1
push eax
call fcn.1013fbbd
add esp, 4
mov dword [esp + 0x3c], eax
cmp eax, edi
jne 0x101019e9
mov edi, 0xc
jmp 0x10101f28
mov ecx, dword [esp + 0x20]
mov edx, dword [esi + 0x38]
push 2
push ecx
push edx
push eax
call fcn.100f6ee0
add esp, 0x10
mov dword [esp + 0x20], eax
mov eax, dword [esi + 4]
test eax, 0x800000
je 0x10101a24
mov dword [esp + 0x1c], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], 1
jmp 0x10101b86
test eax, 0x10000000
jne 0x10101af3
lea eax, [esp + 0x50]
push 8
push eax
call fcn.10109450
push esi
call fcn.100f8ff0
mov ecx, dword [esi + 0x48]
mov edx, dword [esi + 0x50]
push eax
push ecx
push edx
lea eax, [esp + 0x84]
push eax
call fcn.10100630
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
lea ecx, [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push eax
push ecx
push edx
lea eax, [esp + 0x9c]
push eax
call fcn.10100770
add esp, 0x34
mov dword [esp + 0x24], eax
cmp eax, edi
jne 0x10101a8c
mov dword [esp + 0x18], edi
mov edx, dword [esp + 0x8c]
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x58]
push edx
mov edx, dword [esp + 0x58]
push eax
push ecx
push edx
call fcn.10100830
mov edi, eax
add esp, 0x14
mov dword [esp + 0x28], edi
test edi, edi
je 0x10101b86
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x1c]
push eax
push ecx
push edx
lea eax, [esp + 0x78]
push edi
push eax
call fcn.101007f0
push 0
push 0
push edi
lea ecx, [esp + 0x8c]
push ecx
push esi
call fcn.10100920
add esp, 0x28
jmp 0x10101b86
mov edi, 0x18
test eax, 0x2000000
je 0x10101b0b
xor eax, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], eax
jmp 0x10101b42
push edi
mov dword [esp + 0x1c], edi
call fcn.1013fbbd
add esp, 4
mov dword [esp + 0x24], eax
test eax, eax
je 0x10101b3a
push eax
lea edx, [esp + 0x44]
push edx
push esi
call fcn.100f8ff0
add esp, 4
push eax
call fcn.10100320
add esp, 0xc
jmp 0x10101b42
mov dword [esp + 0x18], 0
push edi
mov dword [esp + 0x20], edi
call fcn.1013fbbd
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
je 0x10101b71
push eax
lea eax, [esp + 0x44]
push eax
push esi
call fcn.100f8ff0
add esp, 4
push eax
call fcn.101004a0
add esp, 0xc
jmp 0x10101b79
mov dword [esp + 0x1c], 0
push 0
push 0
push esi
call fcn.101009c0
add esp, 0xc
mov ecx, dword [esp + 0x18]
add ebp, ebx
add ebp, dword [esp + 0x20]
mov dword [esi + 0xe8], 4
add ebp, dword [esp + 0x1c]
lea ebx, [ecx + ebp + 0x40]
cmp ebx, 0x80
jge 0x10101bb1
mov eax, 1
jmp 0x10101bdd
cmp ebx, 0x100
jge 0x10101bc0
mov eax, 2
jmp 0x10101bdd
cmp ebx, 0x10000
jge 0x10101bcf
mov eax, 3
jmp 0x10101bdd
xor eax, eax
cmp ebx, 0x1000000
setge al
add eax, 4
lea edi, [eax + ebx + 1]
cmp edi, 0x80
mov dword [esp + 0x5c], edi
jge 0x10101bf4
mov ecx, 1
jmp 0x10101c20
cmp edi, 0x100
jge 0x10101c03
mov ecx, 2
jmp 0x10101c20
cmp edi, 0x10000
jge 0x10101c12
mov ecx, 3
jmp 0x10101c20
xor ecx, ecx
cmp edi, 0x1000000
setge cl
add ecx, 4
add eax, ecx
lea ebp, [eax + ebx + 2]
cmp ebp, 0x80
jge 0x10101c35
mov ecx, 1
jmp 0x10101c61
cmp ebp, 0x100
jge 0x10101c44
mov ecx, 2
jmp 0x10101c61
cmp ebp, 0x10000
jge 0x10101c53
mov ecx, 3
jmp 0x10101c61
xor ecx, ecx
cmp ebp, 0x1000000
setge cl
add ecx, 4
add eax, ecx
lea edi, [eax + ebx + 3]
cmp edi, 0x80
jge 0x10101c76
mov ecx, 1
jmp 0x10101ca2
cmp edi, 0x100
jge 0x10101c85
mov ecx, 2
jmp 0x10101ca2
cmp edi, 0x10000
jge 0x10101c94
mov ecx, 3
jmp 0x10101ca2
xor ecx, ecx
cmp edi, 0x1000000
setge cl
add ecx, 4
add ecx, eax
lea eax, [ecx + ebx + 4]
mov dword [esi + 0xe8], eax
test eax, eax
jne 0x10101cb7
mov eax, 1
push eax
call fcn.1013fbbd
add esp, 4
mov dword [esi + 0xec], eax
test eax, eax
jne 0x10101ce6
push str.create_ntlmssp_negotiate_auth
push str._ERROR___s:_Cant_allocate_token_pointer_n
call fcn.10117cb0
add esp, 8
mov edi, 0xc
jmp 0x10101f28
mov edx, dword [esi + 0xe8]
push edx
push 0
push eax
call fcn.1013f910
mov eax, dword [esi + 0xec]
mov byte [eax], 0xa1
inc eax
push edi
lea edi, [esp + 0x20]
mov dword [esp + 0x20], eax
call fcn.10100ef0
mov eax, dword [esp + 0x20]
mov byte [eax], 0x30
inc eax
push ebp
mov dword [esp + 0x24], eax
call fcn.10100ef0
mov eax, dword [esp + 0x24]
mov byte [eax], 0xa2
inc eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x70]
push eax
call fcn.10100ef0
mov eax, dword [esp + 0x28]
mov byte [eax], 4
inc eax
push ebx
mov dword [esp + 0x2c], eax
call fcn.10100ef0
mov esi, dword [esp + 0x2c]
push str.NTLMSSP
push esi
mov eax, ebx
mov ebp, esi
call fcn.10102de0
mov dword [esi + 8], 3
mov eax, dword [esp + 0x3c]
mov edi, ebp
sub edi, dword [esp + 0x40]
mov word [esp + 0x34], ax
sub edi, eax
add edi, ebx
mov word [esp + 0x36], ax
mov ecx, dword [esp + 0x34]
add esi, 0xc
mov eax, edi
sub eax, ebp
mov dword [esi], ecx
mov dword [esi + 4], eax
add esp, 0x24
add esi, 8
cmp dword [esp + 0x24], 0
je 0x10101da9
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
push edx
push eax
push edi
call fcn.1013fc90
add esp, 0xc
mov eax, dword [esp + 0x1c]
add edi, dword [esp + 0x18]
mov word [esp + 0x10], ax
mov word [esp + 0x12], ax
mov ecx, dword [esp + 0x10]
mov eax, edi
sub eax, ebp
mov dword [esi], ecx
mov dword [esi + 4], eax
add esi, 8
cmp dword [esp + 0x28], 0
je 0x10101de5
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
push edx
push eax
push edi
call fcn.1013fc90
add esp, 0xc
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x2c]
mov edi, ebp
sub edi, ecx
sub edi, edx
sub edi, dword [esp + 0x20]
mov word [esp + 0x10], cx
sub edi, dword [esp + 0x1c]
mov word [esp + 0x12], cx
sub edi, dword [esp + 0x18]
add esi, 8
add edi, ebx
mov ebx, dword [esp + 0x10]
mov eax, edi
sub eax, ebp
cmp dword [esp + 0x34], 0
mov dword [esi - 8], ebx
mov dword [esi - 4], eax
je 0x10101e3a
mov edx, dword [esp + 0x34]
push ecx
push edx
push edi
call fcn.1013fc90
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x44]
add esp, 0xc
add edi, ecx
mov word [esp + 0x10], dx
mov word [esp + 0x12], dx
mov ecx, dword [esp + 0x10]
mov eax, edi
sub eax, ebp
mov dword [esi], ecx
mov dword [esi + 4], eax
add esi, 8
cmp dword [esp + 0x30], 0
je 0x10101e74
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
push edx
push eax
push edi
call fcn.1013fc90
mov edx, dword [esp + 0x38]
add esp, 0xc
mov eax, dword [esp + 0x20]
add edi, edx
mov word [esp + 0x10], ax
mov word [esp + 0x12], ax
mov ecx, dword [esp + 0x10]
mov eax, edi
sub eax, ebp
mov dword [esi], ecx
mov dword [esi + 4], eax
add esi, 8
cmp dword [esp + 0x3c], 0
je 0x10101eae
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x3c]
push edx
push eax
push edi
call fcn.1013fc90
add esp, 0xc
add edi, dword [esp + 0x20]
test dword [esp + 0x84], 0x40000000
je 0x10101ed1
push str.create_ntlmssp_negotiate_auth
push str._ERROR___s:_Key_exchange_not_currently_supported_n
call fcn.10117cb0
add esp, 8
xor ecx, ecx
xor edx, edx
mov word [esp + 0x10], cx
mov ecx, dword [esp + 0x48]
mov word [esp + 0x12], dx
mov eax, dword [esp + 0x10]
mov dword [esi], eax
sub edi, ebp
mov dword [esi + 4], edi
add esi, 8
test dword [ecx + 4], 0x800000
mov eax, 0xa0080204
je 0x10101f04
mov eax, 0xa0080a04
test byte [ecx + 0x98], 4
je 0x10101f12
or eax, 1
jmp 0x10101f15
or eax, 2
test byte [ecx + 0x6c], 4
je 0x10101f20
or eax, 0x8010
mov edi, dword [esp + 0x58]
mov dword [esi], eax
mov esi, ecx
mov eax, dword [esp + 0x4c]
xor ebx, ebx
pop ebp
cmp eax, ebx
je 0x10101f3c
push eax
call fcn.1013db65
add esp, 4
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x10101f4d
push eax
call fcn.1013db65
add esp, 4
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x10101f5e
push eax
call fcn.1013db65
add esp, 4
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x10101f6f
push eax
call fcn.1013db65
add esp, 4
mov eax, dword [esp + 0x38]
cmp eax, ebx
je 0x10101f80
push eax
call fcn.1013db65
add esp, 4
mov eax, dword [esp + 0x30]
cmp eax, ebx
je 0x10101f91
push eax
call fcn.1013db65
add esp, 4
cmp edi, ebx
je 0x10101fb4
mov eax, dword [esi + 0xec]
cmp eax, ebx
je 0x10101fa8
push eax
call fcn.1013db65
add esp, 4
mov dword [esi + 0xec], ebx
mov dword [esi + 0xe8], ebx
mov ecx, dword [esp + 0x78]
mov eax, edi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1013d581
add esp, 0x70
ret