Function at 0xb884d0
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x34
push ebx
mov ebx, dword [ebp + 8]
mov eax, ecx
xor ecx, ecx
mov dword [esp + 0x14], eax
push esi
push edi
mov edi, dword [ebx + 8]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], ecx
mov ecx, dword [ebx]
add edi, ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x2c], edi
test eax, eax
je 0xbd1de2
mov eax, dword [edi + 0x20]
xor ebx, ebx
mov edx, dword [edi + 0x24]
add eax, ecx
mov edi, dword [edi + 0x18]
add edx, ecx
sub edi, 1
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
js 0xb8858b
lea esp, [esp]
lea esi, [edi + ebx]
sar esi, 1
mov eax, dword [eax + esi*4]
add eax, ecx
mov ecx, dword [esp + 0x1c]
mov edi, edi
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0xb88610
test dl, dl
je 0xb88574
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0xb88610
add ecx, 2
add eax, 2
test dl, dl
jne 0xb88550
xor eax, eax
test eax, eax
js 0xb88592
jle 0xb88597
lea ebx, [esi + 1]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
cmp edi, ebx
jge 0xb88540
mov eax, 0xc000007a
jmp 0xb88607
lea edi, [esi - 1]
jmp 0xb8857f
cmp edi, ebx
jl 0xb8858b
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x2c]
mov ebx, dword [ebp + 8]
movzx eax, word [eax + esi*2]
movzx ecx, ax
mov eax, dword [edi + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x14]
mov esi, dword [eax + ecx]
add esi, ecx
mov dword [esp + 0x10], esi
cmp esi, ecx
jb 0xb8858b
mov eax, dword [ebx + 4]
add eax, ecx
cmp esi, eax
jae 0xb8858b
cmp esi, edi
ja 0xbd1dee
push 4
lea eax, [esp + 0x30]
push eax
push 7
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentProcess]
push eax
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_1.dll_GetProcessMitigationPolicy]
test eax, eax
je 0xb885fa
test byte [esp + 0x2c], 2
jne 0xbd1f45
mov ecx, dword [ebp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
sbb eax, eax
or eax, 1
jmp 0xb88576
sub dx, word [edi + 0x10]
movzx eax, dx
jmp 0xb885aa
mov eax, dword [ebx + 0xc]
add eax, edi
cmp esi, eax
jae 0xb885d5
push 0x2e
push esi
call dword [sym.imp.ntdll.dll_strchr]
mov esi, eax
add esp, 8
test esi, esi
jne 0xbd1e17
mov eax, 0xc000007b
jmp 0xb88607
lea eax, [esp + 0x30]
push eax
push 0xb2be98
push 0
call dword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetModuleHandleExW]
test eax, eax
je 0xb8858b
mov eax, dword [esp + 0x30]
test eax, eax
je 0xb8858b
mov ecx, 0x5a4d
cmp word [eax], cx
jne 0xb8858b
mov ecx, dword [eax + 0x3c]
cmp ecx, 0x10000000
jae 0xb8858b
add ecx, dword [esp + 0x30]
cmp ecx, dword [esp + 0x30]
jb 0xb8858b
cmp dword [ecx], 0x4550
jne 0xb8858b
movzx eax, word [ecx + 0x18]
mov edx, 0x10b
cmp ax, dx
je 0xbd1e90
mov edx, 0x20b
cmp ax, dx
jne 0xb8858b
mov eax, dword [ecx + 0x78]
mov dword [esp + 0x38], eax
mov eax, dword [ecx + 0x7c]
mov dword [esp + 0x3c], eax
mov eax, dword [ecx + 0x50]
mov dword [esp + 0x34], eax
lea edi, [esi + 1]
xor ecx, ecx
cmp byte [edi], 0x23
jne 0xbd1f1c
lea edx, [esi + 2]
xor edi, edi
xor ebx, ebx
test edx, edx
je 0xbd1faf
cmp word [edx], 0x20
jne 0xbd1ecd
add edx, 2
cmp word [edx], 0x20
je 0xbd1ec4
cmp word [edx], 0x2d
jne 0xbd1edb
mov ebx, 1
add edx, 2
cmp word [edx], 0x20
jne 0xbd1eea
add edx, 2
cmp word [edx], 0x20
je 0xbd1ee1
movzx esi, word [edx]
test si, si
je 0xbd1f16
lea eax, [esi - 0x30]
cmp ax, 9
ja 0xbd1faf
add edx, 2
movzx eax, si
lea ecx, [ecx + ecx*4]
lea ecx, [ecx - 0x18]
movzx esi, word [edx]
lea ecx, [eax + ecx*2]
test si, si
jne 0xbd1ef2
test ebx, ebx
je 0xbd1f1c
neg ecx
lea eax, [esp + 0x10]
movzx edx, cx
push eax
lea eax, [esp + 0x34]
mov ecx, edi
push eax
call fcn.00b884d0
mov dword [esp + 0x18], eax
test eax, eax
js 0xb88607
mov esi, dword [esp + 0x10]
jmp 0xb885d5
push 0x800
push 0
push 0xb2fc98
call dword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_LoadLibraryExW]
mov edi, eax
test edi, edi
je 0xb885fa
push 0xb2fcb8
push edi
call dword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_GetProcAddress]
mov ebx, eax
test ebx, ebx
je 0xbd1fa3
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 1
mov ecx, esi
and esi, 0xfffff000
push 0x1000
and ecx, 0xfff
push esi
mov dword [esp + 0x34], ecx
call dword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentProcess]
push eax
call ebx
push edi
call dword [sym.imp.api_ms_win_core_libraryloader_l1_2_0.dll_FreeLibrary]
jmp 0xb885fa
xor eax, eax
jmp 0xb88607