Function at 0x4231f0
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, 0x28
mov eax, dword [0x433024]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov dword [ebp - 0x28], ebx
push eax
xor eax, eax
setnp al
push edx
push edi
xor edi, edi
setnp al
push edx
push esi
xor esi, esi
setnp al
push edx
xor edx, eax
shl edx, 2
shl ax, 0x62
xchg edx, eax
pop edx
or eax, ecx
pop eax
mov ecx, dword [ebp + 0x44]
xor eax, eax
mov edx, dword [ebp + 0x10]
sub ecx, 0x5c
mov dword [ebp + 0x44], ecx
mov dword [ebp - 0x24], eax
test edx, edx
jle 0x4233dd
cmp eax, 0x2b
jae 0x42330f
push ecx
push str.GASfdrtwyefdeytwr
call fcn.00404ba0
mov eax, dword fs:[0x30]
add esp, 8
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x1c], ecx
cmp ecx, esi
je 0x4232d4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4232d4
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4232cd
nop word [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4232b0
cmp esi, 0x1d5f8790
je 0x4232d8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x423295
mov eax, dword [eax]
jmp 0x423270
mov esi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
push 0
push 0
mov eax, dword [esi + 0x24]
push 0
push 0
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov ecx, dword [eax + edx]
mov eax, dword [ebp - 0x24]
add ecx, edx
add eax, 4
push eax
push 0
call ecx
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x28]
test ebx, ebx
jne 0x4233ce
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x1c], edx
mov ecx, dword [edx + 0x3c]
mov ecx, dword [ecx + edx + 0x78]
add ecx, edx
mov dword [ebp - 0x20], ecx
cmp ecx, edx
je 0x423384
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x423384
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, edx
mov ecx, dword [ebx - 4]
lea ebx, [ebx - 4]
add ecx, edx
dec edi
mov esi, 0x811c9dc5
mov dl, byte [ecx]
inc ecx
test dl, dl
je 0x42337d
nop dword [eax]
movsx edx, dl
lea ecx, [ecx + 1]
xor edx, esi
imul esi, edx, 0x1000193
mov dl, byte [ecx - 1]
test dl, dl
jne 0x423360
cmp esi, 0xb9afd830
je 0x423388
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x423348
mov eax, dword [eax]
jmp 0x423323
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
push 0
push 0
mov eax, dword [esi + 0x24]
push 0x34
push 0
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
push str.GFASrtefdwtrdwe
push 0x434030
call fcn.004010d0
push eax
call fcn.004013a0
mov eax, dword [ebp - 0x24]
add esp, 0xc
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x28]
mov ecx, dword [ebp + 0x44]
inc eax
mov dword [ebp - 0x24], eax
cmp eax, edx
jl 0x423245
test ebx, ebx
jne 0x42340e
push str.Error_
push 0x434030
call fcn.004010d0
push eax
call fcn.004013a0
add esp, 0xc
xor eax, eax
xor edx, edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040701a
mov esp, ebp
pop ebp
ret
push dword [ebp + 0x20]
mov eax, edx
push dword [ebp + 0x1c]
cdq
push edx
push eax
call fcn.00407030
mov ecx, dword [ebp + 0x24]
mov esi, dword [ebp + 0x28]
shld esi, ecx, 2
shl ecx, 2
sub eax, ecx
mov ecx, 0x434030
sbb edx, esi
add eax, dword [ebp + 0x2c]
adc edx, dword [ebp + 0x30]
push edx
push eax
call fcn.004023d0
movups xmm0, xmmword [str.bZGtARYPFAeWG5]
lea eax, [ebp - 0x14]
mov esi, 1
mov edi, 2
mov ebx, 3
xor edx, edx
sub esi, eax
sub edi, eax
sub ebx, eax
movups xmmword [ebp - 0x14], xmm0
mov eax, edx
lea ecx, [ebp - 0x14]
and eax, 3
add ecx, edx
add edx, 4
movzx eax, byte [eax + 0x4243d4]
xor byte [ecx], al
lea eax, [ecx + esi]
and eax, 3
movzx eax, byte [eax + 0x4243d4]
xor byte [ecx + 1], al
lea eax, [ecx + edi]
and eax, 3
movzx eax, byte [eax + 0x4243d4]
xor byte [ecx + 2], al
lea eax, [ecx + ebx]
and eax, 3
movzx eax, byte [eax + 0x4243d4]
xor byte [ecx + 3], al
cmp edx, 0x10
jb 0x423466
push eax
xor eax, eax
setnp al
push edx
push edi
xor edi, edi
setnp al
push edx
push esi
xor esi, esi
setnp al
push edx
xor edx, eax
shl edx, 2
shl ax, 0x62
xchg edx, eax
pop edx
or eax, ecx
pop eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x1c], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x20], ecx
cmp ecx, esi
je 0x423544
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x423544
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x42353d
nop word [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x423520
cmp esi, 0xe463da3c
je 0x423548
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x423505
mov eax, dword [eax]
jmp 0x4234e0
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
push str.kernel32.dll
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov ecx, dword fs:[0x30]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x24], eax
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov esi, dword [ecx + 0x18]
mov dword [ebp - 0x1c], esi
mov edx, dword [esi + 0x3c]
mov eax, dword [edx + esi + 0x78]
add eax, esi
mov dword [ebp - 0x20], eax
cmp eax, esi
je 0x4235e4
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4235e4
mov eax, dword [eax + 0x20]
lea ebx, [eax + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov al, byte [edx]
inc edx
test al, al
je 0x4235dd
nop dword [eax + eax]
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x4235c0
cmp esi, 0xf8f45725
je 0x4235e8
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4235a6
mov ecx, dword [ecx]
jmp 0x423581
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
lea ecx, [ebp - 0x14]
push ecx
push dword [ebp - 0x24]
add eax, edx
call eax
lea ecx, [ebp - 0x18]
mov dword [0x433f00], eax
push ecx
push 0x40
push dword [ebp + 0xc]
push dword [ebp - 0x28]
call eax
push dword [ebp + 0x60]
push dword [ebp + 0x5c]
push 0
push dword [ebp + 0x54]
call fcn.00407070
mov ecx, dword [ebp - 4]
xor edx, 0
xor eax, dword [ebp + 0x78]
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.0040701a
mov esp, ebp
pop ebp
ret