Function at 0x4068e0
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by fnv-1a hash
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
mov eax, dword [0x410494]
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
test eax, eax
jne 0x4069de
mov eax, dword fs:[0x30]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x10], 0xf8f45725
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edi, eax
mov dword [ebp - 8], eax
mov dword [ebp - 0xc], edi
nop dword [eax]
mov eax, dword [edi + 0x2c]
mov ecx, dword [edi + 0x30]
test ebx, ebx
je 0x406956
add eax, 0xfffffff8
mov edx, 0x811c9dc5
movzx eax, ax
shr eax, 1
lea esi, [ecx + eax*2]
cmp ecx, esi
je 0x406952
nop
movsx eax, byte [ecx]
add ecx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jne 0x406940
cmp edx, ebx
jne 0x4069bd
mov ebx, dword [edi + 0x18]
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x18], eax
lea eax, [ecx + ebx]
mov dword [ebp - 0x1c], eax
cmp eax, ebx
je 0x4069ba
mov esi, dword [eax + 0x18]
test esi, esi
je 0x4069ba
mov eax, dword [eax + 0x20]
lea edi, [eax + esi*4]
add edi, ebx
mov eax, dword [edi - 4]
lea edi, [edi - 4]
add eax, ebx
dec esi
mov edx, 0x811c9dc5
mov cl, byte [eax]
inc eax
test cl, cl
je 0x4069aa
movsx ecx, cl
lea eax, [eax + 1]
xor ecx, edx
imul edx, ecx, 0x1000193
mov cl, byte [eax - 1]
test cl, cl
jne 0x406995
cmp edx, dword [ebp - 0x10]
je 0x406cd5
test esi, esi
jne 0x406980
mov edi, dword [ebp - 0xc]
mov ebx, dword [ebp - 4]
mov eax, dword [edi]
mov edi, eax
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 8]
je 0x4069d3
cmp dword [edi + 0x18], 0
jne 0x406920
xor ecx, ecx
mov dword [ebp - 0x10], ecx
mov dword [0x410494], ecx
mov eax, dword [0x410498]
mov dword [ebp - 0xc], eax
test eax, eax
jne 0x406ace
mov eax, dword fs:[0x30]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0xc], 0xd263bde6
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edi, eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 8], edi
nop
mov eax, dword [edi + 0x2c]
mov ecx, dword [edi + 0x30]
test ebx, ebx
je 0x406a46
add eax, 0xfffffff8
mov edx, 0x811c9dc5
movzx eax, ax
shr eax, 1
lea esi, [ecx + eax*2]
cmp ecx, esi
je 0x406a42
nop
movsx eax, byte [ecx]
add ecx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jne 0x406a30
cmp edx, ebx
jne 0x406aad
mov ebx, dword [edi + 0x18]
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x18], eax
lea eax, [ecx + ebx]
mov dword [ebp - 0x1c], eax
cmp eax, ebx
je 0x406aaa
mov esi, dword [eax + 0x18]
test esi, esi
je 0x406aaa
mov eax, dword [eax + 0x20]
lea edi, [eax + esi*4]
add edi, ebx
mov ecx, dword [edi - 4]
lea edi, [edi - 4]
add ecx, ebx
dec esi
mov edx, 0x811c9dc5
mov al, byte [ecx]
inc ecx
test al, al
je 0x406a9a
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x406a85
cmp edx, dword [ebp - 0xc]
je 0x406d18
test esi, esi
jne 0x406a70
mov edi, dword [ebp - 8]
mov ebx, dword [ebp - 4]
mov eax, dword [edi]
mov edi, eax
mov dword [ebp - 8], eax
cmp eax, dword [ebp - 0x14]
je 0x406ac3
cmp dword [edi + 0x18], 0
jne 0x406a10
xor ecx, ecx
mov dword [ebp - 0xc], ecx
mov dword [0x410498], ecx
mov eax, dword [0x410490]
mov dword [ebp - 8], eax
test eax, eax
jne 0x406bbe
mov eax, dword fs:[0x30]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x14], 0x6dd8a845
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edi, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 8], edi
nop
mov eax, dword [edi + 0x2c]
mov ecx, dword [edi + 0x30]
test ebx, ebx
je 0x406b36
add eax, 0xfffffff8
mov edx, 0x811c9dc5
movzx eax, ax
shr eax, 1
lea esi, [ecx + eax*2]
cmp ecx, esi
je 0x406b32
nop
movsx eax, byte [ecx]
add ecx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jne 0x406b20
cmp edx, ebx
jne 0x406b9d
mov ebx, dword [edi + 0x18]
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x20], eax
lea eax, [ecx + ebx]
mov dword [ebp - 0x1c], eax
cmp eax, ebx
je 0x406b9a
mov esi, dword [eax + 0x18]
test esi, esi
je 0x406b9a
mov eax, dword [eax + 0x20]
lea edi, [eax + esi*4]
add edi, ebx
mov ecx, dword [edi - 4]
lea edi, [edi - 4]
add ecx, ebx
dec esi
mov edx, 0x811c9dc5
mov al, byte [ecx]
inc ecx
test al, al
je 0x406b8a
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x406b75
cmp edx, dword [ebp - 0x14]
je 0x406d5b
test esi, esi
jne 0x406b60
mov edi, dword [ebp - 8]
mov ebx, dword [ebp - 4]
mov eax, dword [edi]
mov edi, eax
mov dword [ebp - 8], eax
cmp eax, dword [ebp - 0x18]
je 0x406bb3
cmp dword [edi + 0x18], 0
jne 0x406b00
xor ecx, ecx
mov dword [ebp - 8], ecx
mov dword [0x410490], ecx
mov edi, dword [0x41049c]
test edi, edi
jne 0x406cab
mov eax, dword fs:[0x30]
xor ebx, ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], 0xc0088eea
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edi, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], edi
nop dword [eax]
mov eax, dword [edi + 0x2c]
mov ecx, dword [edi + 0x30]
test ebx, ebx
je 0x406c26
add eax, 0xfffffff8
mov edx, 0x811c9dc5
movzx eax, ax
shr eax, 1
lea esi, [ecx + eax*2]
cmp ecx, esi
je 0x406c22
nop
movsx eax, byte [ecx]
add ecx, 2
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jne 0x406c10
cmp edx, ebx
jne 0x406c8d
mov ebx, dword [edi + 0x18]
mov eax, dword [ebx + 0x3c]
mov ecx, dword [eax + ebx + 0x78]
mov eax, dword [eax + ebx + 0x7c]
mov dword [ebp - 0x24], eax
lea eax, [ebx + ecx]
mov dword [ebp - 0x20], eax
cmp eax, ebx
je 0x406c8a
mov esi, dword [eax + 0x18]
test esi, esi
je 0x406c8a
mov eax, dword [eax + 0x20]
lea edi, [eax + esi*4]
add edi, ebx
mov ecx, dword [edi - 4]
lea edi, [edi - 4]
add ecx, ebx
dec esi
mov edx, 0x811c9dc5
mov al, byte [ecx]
inc ecx
test al, al
je 0x406c7a
movsx eax, al
lea ecx, [ecx + 1]
xor eax, edx
imul edx, eax, 0x1000193
mov al, byte [ecx - 1]
test al, al
jne 0x406c65
cmp edx, dword [ebp - 0x18]
je 0x406d9e
test esi, esi
jne 0x406c50
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 4]
mov eax, dword [edi]
mov edi, eax
mov dword [ebp - 0x14], eax
cmp eax, dword [ebp - 0x1c]
je 0x406ca3
cmp dword [edi + 0x18], 0
jne 0x406bf0
xor edi, edi
mov dword [0x41049c], edi
call dword [ebp - 8]
push str.ntdll.dll
mov esi, eax
call dword [ebp - 0xc]
push str.DbgUiRemoteBreakin
push eax
call dword [ebp - 0x10]
push 0
push 6
push 0x4068d0
push eax
push esi
call edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx + 0x24]
lea eax, [eax + esi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [eax + ebx]
add ecx, ebx
mov dword [ebp - 0x10], ecx
cmp ecx, edx
jbe 0x4069d8
mov eax, dword [ebp - 0x18]
add eax, edx
cmp ecx, eax
jae 0x4069d8
mov edi, dword [ebp - 8]
mov ebx, 0x811c9dc5
mov dword [ebp - 4], ebx
mov dword [ebp - 0x10], ebx
jmp 0x4069bd
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx + 0x24]
lea eax, [eax + esi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [eax + ebx]
add ecx, ebx
mov dword [ebp - 0xc], ecx
cmp ecx, edx
jbe 0x406ac8
mov eax, dword [ebp - 0x18]
add eax, edx
cmp ecx, eax
jae 0x406ac8
mov edi, dword [ebp - 0x14]
mov ebx, 0x811c9dc5
mov dword [ebp - 4], ebx
mov dword [ebp - 0xc], ebx
jmp 0x406aad
mov edx, dword [ebp - 0x1c]
mov eax, dword [edx + 0x24]
lea eax, [eax + esi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [eax + ebx]
add ecx, ebx
mov dword [ebp - 8], ecx
cmp ecx, edx
jbe 0x406bb8
mov eax, dword [ebp - 0x20]
add eax, edx
cmp ecx, eax
jae 0x406bb8
mov edi, dword [ebp - 0x18]
mov ebx, 0x811c9dc5
mov dword [ebp - 4], ebx
mov dword [ebp - 0x14], ebx
jmp 0x406b9d
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + 0x24]
lea eax, [eax + esi*2]
movzx ecx, word [eax + ebx]
mov eax, dword [edx + 0x1c]
lea eax, [eax + ecx*4]
mov edi, dword [eax + ebx]
add edi, ebx
cmp edi, edx
jbe 0x406ca5
mov eax, dword [ebp - 0x24]
add eax, edx
cmp edi, eax
jae 0x406ca5
mov edi, dword [ebp - 0x1c]
mov ebx, 0x811c9dc5
mov dword [ebp - 4], ebx
mov dword [ebp - 0x18], ebx
jmp 0x406c8d