Function at 0x4201c0
Capabilities:
Check for software breakpoints
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x8c
mov eax, dword [esp + 0xa8]
mov ebx, dword [esp + 0xa4]
mov ecx, dword [eax + 4]
mov eax, 0xfffffffe
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x4201e0
mov ecx, 0xfffffffe
cmp word [ebx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4201f0
sar eax, 1
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0x3f
test edx, edx
jns 0x420210
mov eax, 0xffffffff
jmp 0x420219
add eax, ecx
lea eax, [eax*2 + 0x7e]
push eax
call fcn.0040ced0
add esp, 4
mov esi, eax
mov dword [esp + 0x4c], 0x23b7214e
mov dword [esp + 0x50], 0x274325b7
mov dword [esp + 0x54], 0x5b1959ca
mov dword [esp + 0x58], 0x5fc05dc3
mov dword [esp + 0x5c], 0x533751c4
mov dword [esp + 0x60], 0x57c255dc
mov dword [esp + 0x64], 0x4b2e4931
mov dword [esp + 0x68], 0x4f1a4d01
mov dword [esp + 0x6c], 0x430b4112
mov dword [esp + 0x70], 0x470f4510
mov dword [esp + 0x74], 0x7b2d792e
mov dword [esp + 0x78], 0x7f377d2e
mov dword [esp + 0x7c], 0x731e7125
mov dword [esp + 0x80], 0x771275ed
mov dword [esp + 0x84], 0x6b6a690a
mov byte [esp + 0x88], 0
xor eax, eax
nop
nop
nop
nop
mov ecx, eax
add cl, 0xb8
xor cl, byte [esp + eax + 0x4c]
add cl, 0x68
mov byte [esp + eax + 0x4c], cl
inc eax
cmp eax, 0x3d
jne 0x4202b0
mov dword [esp + 4], 0x71cb7fd0
mov dword [esp + 8], 0x75c373c4
mov dword [esp + 0xc], 0x49d577c6
mov dword [esp + 0x10], 0x4ded4bf1
mov dword [esp + 0x14], 0x41ea4fe0
mov dword [esp + 0x18], 0x45e443e7
mov dword [esp + 0x1c], 0x59f147e7
mov dword [esp + 0x20], 0x5dee5be4
mov dword [esp + 0x24], 0x51e15ff0
mov dword [esp + 0x28], 0x55d853e1
mov dword [esp + 0x2c], 0x29f157ab
mov dword [esp + 0x30], 0x2d9e2ba0
mov dword [esp + 0x34], 0x21902f8b
mov dword [esp + 0x38], 0x25992395
mov dword [esp + 0x3c], 0x39982795
mov dword [esp + 0x40], 0x3dc73bc5
mov dword [esp + 0x44], 0x313e3fc1
mov byte [esp + 0x48], 0
mov eax, 0x14725a15
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax - 0x14725a11]
lea edx, [eax - 0x14725a00]
and edx, ecx
or ecx, eax
xor ecx, edx
mov edx, ecx
not edx
or edx, 0x99c43d96
add edx, ecx
inc edx
mov ebp, edx
and ebp, 2
mov edi, edx
or edx, 2
imul edx, ebp
xor ebp, 2
and edi, 0xfd
imul edi, ebp
lea ebp, [ecx + ecx]
and ebp, 0x2c
sub ecx, ebp
add ecx, edx
add ecx, edi
add cl, 0x97
mov byte [esp + eax - 0x14725a11], cl
inc eax
cmp eax, 0x14725a5a
jne 0x420360
mov edi, dword [esp + 0xa8]
mov ecx, dword [edi + 4]
movzx edx, word [ecx]
mov eax, esi
test dx, dx
je 0x4203f1
add ecx, 2
mov eax, esi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x4203e0
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x420421
lea edx, [esp + 6]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x420410
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
je 0x420451
add ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x420440
mov word [eax], 0
movzx ecx, word [esp + 0x4c]
test cx, cx
je 0x420481
lea edx, [esp + 0x4e]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x420470
mov word [eax], 0
mov eax, dword [esp + 0xac]
mov ebx, dword [eax]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x4204a0
mov edx, dword [edi]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4204c0
mov edi, dword [edi + 8]
mov edx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [edi + edx + 2], 0
lea edx, [edx + 2]
jne 0x4204e0
sar eax, 1
sar ecx, 1
sar edx, 1
add ecx, eax
lea eax, [edx + ecx]
add eax, 0xb
test eax, eax
mov dword [esp], esi
jns 0x420507
mov eax, 0xffffffff
jmp 0x420510
add ecx, edx
lea eax, [ecx*2 + 0x16]
push eax
call fcn.0040ced0
add esp, 4
mov edi, eax
mov dword [esp + 4], 0x37573953
mov dword [esp + 8], 0x33463540
mov dword [esp + 0xc], 0x4fc2314d
mov dword [esp + 0x10], 0x4b794dc3
mov dword [esp + 0x14], 0x4948
mov byte [esp + 0x18], 0
mov eax, 0xb7
mov esi, 0x50f93449
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0xb3]
lea ecx, [edx + edx]
not ecx
add ecx, edx
and ecx, 0xb8
and edx, 0x47
or edx, ecx
mov ebp, esi
and ebp, 0x38
mov ecx, esi
or ecx, 0x47
add ecx, eax
or ecx, ebp
xor ecx, edx
add cl, 0x72
mov byte [esp + eax - 0xb3], cl
inc eax
dec esi
cmp eax, 0xcc
jne 0x420560
movzx ecx, word [esp + 4]
mov ebp, edi
mov eax, edi
test cx, cx
je 0x4205d1
lea edx, [esp + 6]
mov eax, ebp
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4205c0
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
mov esi, dword [esp]
je 0x420603
add ebx, 2
mov edi, dword [esp + 0xa8]
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x4205f0
jmp 0x42060a
mov edi, dword [esp + 0xa8]
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [edi]
movzx edx, word [ecx]
test dx, dx
je 0x420631
add ecx, 2
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x420620
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [edi + 8]
movzx edx, word [ecx]
test dx, dx
je 0x420661
add ecx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x420650
mov word [eax], 0
mov dword [esp + 4], 0x191a1b6a
mov eax, 0xf3ae4c3b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0xc51b3c9]
xor ecx, eax
mov edx, ecx
not edx
and edx, 0xd9
and ecx, 0x26
sub ecx, edx
add cl, 0xb2
mov byte [esp + eax + 0xc51b3c9], cl
inc eax
cmp eax, 0xf3ae4c3f
jne 0x420680
lea eax, [esp + 4]
push 0
push 1
push 0
push eax
push esi
push ebp
push dword [esp + 0xb8]
call fcn.00420950
add esp, 0x1c
mov ebx, eax
jmp dword [0x447e14]