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

Disassembly:
sub esp, 0x50
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x54]
push ebx
push ebp
push esi
lea eax, [esp + 0xc]
push edi
push eax
push ecx
push edx
mov dword [esp + 0x20], 0
call fcn.1000a1e0
add esp, 0xc
cmp eax, 0x80000000
jae 0x1000b983
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x1000b686
mov eax, 0x801e0083
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret
mov eax, dword [esp + 0x10]
sub esp, 0x10
add eax, 0x1c
mov ecx, esp
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
call sym.lhcom01A.dll_srvspi_SecLock
add esp, 0x10
cmp eax, 0x80000000
mov dword [esp + 0x64], eax
jae 0x1000b983
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x10], 1
jne 0x1000b80b
mov eax, dword [eax + 0x30]
test eax, eax
je 0x1000b939
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0x6c]
jmp 0x1000b6e6
mov edx, dword [esp + 0x78]
mov ecx, dword [eax]
mov ebx, dword [eax + 0x14]
mov ebp, dword [eax + 0x10]
mov ecx, dword [ecx + 0x20]
test edx, edx
je 0x1000b6fa
mov esi, dword [eax + 4]
mov dword [edx], esi
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x1000b707
mov esi, dword [eax + 0xc]
mov dword [edx], esi
mov edx, dword [esp + 0x80]
test edx, edx
je 0x1000b717
mov esi, dword [eax + 8]
mov dword [edx], esi
inc edi
xor esi, esi
test ecx, ecx
jbe 0x1000b728
test edi, edi
je 0x1000b741
dec edi
inc esi
cmp esi, ecx
jb 0x1000b71e
test edi, edi
je 0x1000b741
cmp edi, 0xffffffff
je 0x1000b94a
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x1000b6e2
jmp 0x1000b93d
mov edx, dword [eax]
dec esi
mov eax, dword [edx + 4]
test eax, eax
mov eax, dword [esp + 0x70]
jne 0x1000b7ab
test eax, eax
je 0x1000b78c
mov eax, dword [ebp + esi*4]
or ecx, 0xffffffff
lea edx, [eax + ebx]
xor eax, eax
mov edi, edx
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x74]
not ecx
mov edi, dword [eax]
dec ecx
lea ecx, [ecx + ecx + 2]
cmp edi, ecx
jb 0x1000b784
mov ecx, dword [esp + 0x70]
push ecx
push edx
call fcn.100104d0
add esp, 8
jmp 0x1000b78c
mov dword [esp + 0x64], 0x801e0085
mov edi, dword [ebp + esi*4]
or ecx, 0xffffffff
add edi, ebx
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x74]
not ecx
dec ecx
lea edx, [ecx + ecx + 2]
mov dword [eax], edx
jmp 0x1000b94a
mov edi, dword [sym.imp.MSVCRT.dll_wcslen]
test eax, eax
je 0x1000b7f0
mov edx, dword [ebp + esi*4]
mov ecx, ebx
add ecx, edx
push ecx
call edi
lea edx, [eax + eax + 2]
mov eax, dword [esp + 0x78]
add esp, 4
cmp dword [eax], edx
jb 0x1000b7e8
mov eax, dword [ebp + esi*4]
mov edx, dword [esp + 0x70]
mov ecx, ebx
add ecx, eax
push ecx
push edx
call dword [sym.imp.MSVCRT.dll_wcscpy]
add esp, 8
jmp 0x1000b7f0
mov dword [esp + 0x64], 0x801e0085
mov eax, dword [ebp + esi*4]
add eax, ebx
push eax
call edi
mov edx, dword [esp + 0x78]
lea ecx, [eax + eax + 2]
add esp, 4
mov dword [edx], ecx
jmp 0x1000b94a
mov ebx, dword [eax + 0x30]
test ebx, ebx
je 0x1000b939
mov ebp, dword [sym.imp.MSVCRT.dll_wcslen]
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x78]
test eax, eax
je 0x1000b82d
mov ecx, dword [ebx + 0x14]
mov dword [eax], ecx
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x1000b83a
mov edx, dword [ebx + 0x1c]
mov dword [eax], edx
mov eax, dword [esp + 0x80]
test eax, eax
je 0x1000b84a
mov ecx, dword [ebx + 0x18]
mov dword [eax], ecx
lea edx, [ebx + 0x20]
lea eax, [esp + 0x38]
push edx
push eax
call fcn.10008be0
add esp, 8
cmp eax, 0x80000000
mov dword [esp + 0x64], eax
jae 0x1000b94a
mov eax, dword [esp + 0x3c]
test eax, eax
jne 0x1000b87d
cmp dword [esp + 0x5c], 0xffffffff
je 0x1000b90f
lea ecx, [esp + 0x38]
lea edx, [esp + 0x28]
push ecx
push edx
call fcn.10008b60
mov esi, dword [eax]
add esp, 8
mov ecx, dword [eax + 4]
mov dword [esp + 0x1c], ecx
mov edx, dword [eax + 8]
mov dword [esp + 0x20], edx
cmp dword [eax + 0xc], 1
je 0x1000b87d
test edi, edi
je 0x1000b8cd
mov eax, dword [esp + 0x5c]
dec edi
cmp eax, 0xffffffff
jne 0x1000b86a
lea eax, [esp + 0x3c]
push eax
call fcn.10003650
add esp, 4
cmp eax, 0x80000000
mov dword [esp + 0x64], eax
jae 0x1000b94a
jmp 0x1000b86a
mov edi, dword [esp + 0x70]
test edi, edi
je 0x1000b8fc
push esi
call ebp
mov edx, dword [esp + 0x78]
lea ecx, [eax + eax + 2]
add esp, 4
cmp dword [edx], ecx
jb 0x1000b8f4
push esi
push edi
call dword [sym.imp.MSVCRT.dll_wcscpy]
add esp, 8
jmp 0x1000b8fc
mov dword [esp + 0x14], 0x801e0085
push esi
call ebp
mov ecx, dword [esp + 0x78]
lea eax, [eax + eax + 2]
add esp, 4
or edi, 0xffffffff
mov dword [ecx], eax
lea edx, [esp + 0x44]
push edx
call fcn.10002c40
add esp, 4
cmp eax, 0x80000000
mov dword [esp + 0x64], eax
jae 0x1000b94a
cmp edi, 0xffffffff
je 0x1000b94a
mov ebx, dword [ebx + 0x4c]
test ebx, ebx
jne 0x1000b820
jmp 0x1000b93d
mov edi, dword [esp + 0x6c]
cmp edi, 0xffffffff
je 0x1000b94a
mov dword [esp + 0x64], 0x801e0000
mov eax, dword [esp + 0x10]
sub esp, 0x10
add eax, 0x1c
mov ecx, esp
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
call sym.lhcom01A.dll_srvspi_SecUnlock
mov eax, dword [esp + 0x24]
add esp, 0x10
cmp eax, 0x80000000
jae 0x1000b983
mov eax, dword [esp + 0x64]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret