Function at 0x67d5b9
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0xc]
add eax, 0xc
cmp edx, eax
je 0x67d65d
mov eax, dword [edx + 0x30]
mov dword [esp + 0x24], eax
mov eax, dword [edx + 0x18]
mov dword [esp + 0x2c], eax
mov esi, dword [0xb771a8]
mov dword [esp + 0x18], esi
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
lea ebp, [eax + 0xc]
mov edi, dword [eax + 0xc]
cmp ebp, edi
je 0x67d96e
test esi, esi
jne 0x67d67c
mov eax, dword [edi + 0x18]
mov dword [esp + 0x18], eax
mov ebp, dword [0xb771b0]
mov esi, dword [esp + 0x18]
test esi, esi
je 0x67d6bd
mov eax, dword [esi + 0x3c]
mov ecx, esi
add ecx, dword [esi + eax + 0x78]
mov dword [esp + 0x28], ecx
mov eax, dword [ecx + 0x20]
mov edi, dword [ecx + 0x18]
mov dword [esp + 0x1c], edi
test edi, edi
je 0x67d6c6
movzx ecx, byte [ebp]
mov byte [esp + 0x22], cl
test cl, cl
sete byte [esp + 0x23]
mov edi, 0
add esi, eax
jmp 0x67d8d5
mov dword [esp + 0x24], 0
mov dword [esp + 0x2c], 0
jmp 0x67d5e5
mov edi, dword [edi]
cmp ebp, edi
je 0x67d96e
mov ebx, dword [edi + 0x30]
movzx eax, word [ebx]
test ax, ax
je 0x67d672
add ebx, 2
mov esi, 0
movzx eax, ax
mov dword [esp], eax
call fcn.0067d57b
movzx eax, ax
add esi, eax
add ebx, 2
movzx eax, word [ebx - 2]
test ax, ax
jne 0x67d68f
cmp dword [esp + 0x18], esi
jne 0x67d672
mov eax, dword [edi + 0x18]
mov dword [esp + 0x18], eax
jmp 0x67d611
mov eax, dword [esp + 0x18]
jmp 0x67d92b
mov eax, 0
jmp 0x67d92b
mov eax, 0
jmp 0x67d92b
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call fcn.0067d58d
cmp dword [esi + 4], eax
je 0x67d705
cmp dword [esi + 8], eax
je 0x67d705
mov dword [esp], 1
mov eax, dword [esp + 0x28]
call eax
sub esp, 4
jmp fcn.0067d8c0
mov eax, dword [0xb77190]
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
mov dword [esp + 4], eax
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_VirtualAlloc]
sub esp, 0x10
mov ebp, eax
mov eax, dword [0xb771ac]
test eax, eax
je 0x67d75d
mov eax, 0
mov edx, dword [str.VirtualProtect]
mov edx, dword [edx + eax]
mov dword [ebp + eax], edx
mov edx, dword [0xb77174]
add eax, edx
mov edx, dword [0xb771ac]
cmp edx, eax
ja 0x67d73e
mov esi, dword [esp + 0x18]
test esi, esi
je 0x67d8b0
mov eax, dword [esi + 0x3c]
mov ecx, esi
add ecx, dword [esi + eax + 0x78]
mov dword [esp + 0x24], ecx
mov eax, dword [ecx + 0x20]
mov edi, dword [ecx + 0x18]
mov dword [esp + 0x1c], edi
test edi, edi
je 0x67d8b0
movzx edx, byte [ebp]
mov byte [esp + 0x22], dl
test dl, dl
sete byte [esp + 0x23]
mov edi, 0
add eax, esi
mov esi, eax
jmp 0x67d7af
add edi, 1
cmp edi, dword [esp + 0x1c]
je 0x67d8b0
mov edx, dword [esi + edi*4]
mov ebx, dword [esp + 0x18]
movzx eax, byte [ebx + edx]
cmp al, byte [esp + 0x22]
jne 0x67d7a2
test al, al
je 0x67d7ea
cmp byte [esp + 0x23], 0
jne 0x67d7ea
lea edx, [ebx + edx + 1]
lea eax, [ebp + 1]
movzx ebx, byte [edx]
movzx ecx, byte [eax]
cmp bl, cl
jne 0x67d7a2
add edx, 1
add eax, 1
test cl, cl
je 0x67d7ea
test bl, bl
jne 0x67d7d2
mov esi, dword [esp + 0x18]
lea eax, [esi + edi*2]
mov edi, dword [esp + 0x24]
add eax, dword [edi + 0x24]
movzx eax, word [eax]
lea eax, [esi + eax*4]
add eax, dword [edi + 0x1c]
add esi, dword [eax]
mov ebx, esi
je 0x67d8b0
mov esi, dword [0xb7719c]
mov edx, dword [0xb771ac]
mov eax, dword [0xb77184]
lea ecx, [esp + 0x3c]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], esi
call ebx
sub esp, 0x10
mov ecx, dword [0xb7716c]
add ecx, dword [esp + 0x2c]
mov edi, dword [ecx + 4]
mov eax, dword [0xb771b4]
mov edx, dword [0xb77184]
cmp eax, edx
jae 0x67d86a
mov edx, edi
add edx, dword [ecx + eax]
mov dword [esi + eax], edx
mov edx, dword [0xb77174]
add eax, edx
mov edx, dword [0xb77184]
cmp edx, eax
ja 0x67d850
mov edx, dword [0xb77170]
mov eax, dword [0xb77194]
mov dword [esi + eax*4], edx
mov eax, dword [0xb77184]
lea edx, [esp + 0x3c]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], esi
call ebx
sub esp, 0x10
mov eax, dword [0xb77198]
mov edx, dword [0xb77198]
add eax, dword [esi + 0xc]
add eax, esi
add esi, edx
mov dword [esp], esi
call eax
mov dword [esp], 1
mov eax, dword [esp + 0x28]
call eax
sub esp, 4
add edi, 1
cmp edi, dword [esp + 0x1c]
je 0x67d6d0
mov edx, dword [esi + edi*4]
mov ebx, dword [esp + 0x18]
movzx eax, byte [ebx + edx]
cmp al, byte [esp + 0x22]
jne 0x67d8c8
test al, al
je 0x67d910
cmp byte [esp + 0x23], 0
jne 0x67d910
lea edx, [ebx + edx + 1]
lea eax, [ebp + 1]
movzx ebx, byte [edx]
movzx ecx, byte [eax]
cmp bl, cl
jne 0x67d8c8
add edx, 1
add eax, 1
test cl, cl
je 0x67d910
test bl, bl
jne 0x67d8f8
mov esi, dword [esp + 0x18]
lea eax, [esi + edi*2]
mov edi, dword [esp + 0x28]
add eax, dword [edi + 0x24]
movzx eax, word [eax]
lea eax, [esi + eax*4]
add eax, dword [edi + 0x1c]
add esi, dword [eax]
mov eax, esi
mov edi, eax
mov dword [esp + 0x28], eax
mov esi, dword [0xb7718c]
cmp dword [esi], 0
je 0x67d705
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call fcn.0067d55b
cmp byte [esi], al
je 0x67d6da
cmp byte [esi + 1], al
je 0x67d6da
mov dword [esp], 1
call edi
sub esp, 4
jmp fcn.0067d8c0
mov eax, dword [0xb771b0]
mov dword [esp + 0x18], 0
mov eax, 0
jmp 0x67d92b