Function at 0x4211a0
Capabilities:
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 ebx, dword [esp + 0xac]
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax]
mov eax, 0xfffffffe
nop
cmp word [ecx + eax + 2], 0
lea eax, [eax + 2]
jne 0x4211c0
mov ecx, 0xfffffffe
cmp word [ebx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4211d0
sar eax, 1
sar ecx, 1
lea edx, [eax + ecx]
add edx, 0x3f
mov edi, 0xffffffff
test edx, edx
jns 0x4211f5
mov eax, 0xffffffff
jmp 0x4211fe
add eax, ecx
lea eax, [eax*2 + 0x7e]
push eax
call fcn.004095d0
add esp, 4
mov dword [esp], eax
mov dword [esp + 0x50], 0xd76bc96a
mov dword [esp + 0x54], 0xd37fd56b
mov dword [esp + 0x58], 0xdf11d16e
mov dword [esp + 0x5c], 0xdb68dd6f
mov dword [esp + 0x60], 0xa70bd964
mov dword [esp + 0x64], 0xa31ea51c
mov dword [esp + 0x68], 0xaf02a169
mov dword [esp + 0x6c], 0xab56ad69
mov dword [esp + 0x70], 0xb74fa956
mov dword [esp + 0x74], 0xb34bb548
mov dword [esp + 0x78], 0xbf45b14a
mov dword [esp + 0x7c], 0xbb43bd42
mov dword [esp + 0x80], 0x8722b945
mov dword [esp + 0x84], 0x832e852d
mov dword [esp + 0x88], 0x8f8e812e
xor ebp, ebp
nop
nop
nop
movzx ecx, byte [esp + ebp + 0x50]
mov edx, edi
or edx, 0x81f6e22e
mov eax, ebp
or eax, 0x81f6e22e
add eax, edx
add eax, ebp
inc eax
xor eax, ecx
add eax, 0x762d9519
mov ecx, eax
and ecx, 1
xor eax, 1
lea eax, [eax + ecx*2]
mov byte [esp + ebp + 0x50], al
lea eax, [ebp + 1]
dec edi
mov ebp, eax
cmp eax, 0x3c
jne 0x421290
mov dword [esp + 4], 0xcf59c964
mov dword [esp + 8], 0xc351cd58
mov dword [esp + 0xc], 0xc767c156
mov dword [esp + 0x10], 0xbb1fc55f
mov dword [esp + 0x14], 0xbf1ab914
mov dword [esp + 0x18], 0xb328bd19
mov dword [esp + 0x1c], 0xb723b111
mov dword [esp + 0x20], 0xab3eb528
mov dword [esp + 0x24], 0xaf33a904
mov dword [esp + 0x28], 0xa32cad3f
mov dword [esp + 0x2c], 0xa703a17d
mov dword [esp + 0x30], 0x9b0ea52c
mov dword [esp + 0x34], 0x9f0c993d
mov dword [esp + 0x38], 0x930b9d0b
mov dword [esp + 0x3c], 0x97049103
mov dword [esp + 0x40], 0x8b55954b
mov dword [esp + 0x44], 0x8f8e8957
mov byte [esp + 0x48], 0
mov esi, 0xbc6de232
mov ecx, 0x43921dcd
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + esi + 0x43921dd2]
lea edi, [ecx - 0x43921d00]
mov ebp, ecx
and ebp, 0x42100d31
mov eax, esi
and eax, 0xac48a2ce
or eax, ebp
xor eax, 0x52354d31
or eax, edx
not edx
or edx, edi
and edx, eax
mov eax, edx
xor eax, 0xfb
and edx, 4
add edx, edx
sub edx, eax
inc dl
mov byte [esp + esi + 0x43921dd2], dl
inc esi
dec ecx
cmp esi, 0xbc6de277
jne 0x421370
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax]
movzx edx, word [ecx]
mov esi, dword [esp]
mov eax, esi
test dx, dx
je 0x4213f1
add ecx, 2
mov eax, esi
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 0x4213e0
mov word [eax], 0
movzx ecx, word [esp + 4]
test cx, cx
je 0x421421
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 0x421410
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
je 0x421451
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 0x421440
mov word [eax], 0
movzx ecx, word [esp + 0x50]
test cx, cx
je 0x421481
lea edx, [esp + 0x52]
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 0x421470
mov word [eax], 0
mov eax, dword [esp + 0xb0]
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 0x4214a0
mov ecx, dword [esp + 0xa4]
mov edx, dword [ecx]
mov ecx, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
cmp word [edx + ecx + 2], 0
lea ecx, [ecx + 2]
jne 0x4214c0
mov edx, dword [esp + 0xa8]
mov edi, dword [edx + 4]
mov edx, 0xfffffffe
nop
nop
nop
nop
nop
nop
cmp word [edi + edx + 2], 0
lea edx, [edx + 2]
jne 0x4214e0
sar eax, 1
sar ecx, 1
sar edx, 1
add ecx, eax
lea eax, [edx + ecx]
add eax, 0xb
test eax, eax
jns 0x421504
mov eax, 0xffffffff
jmp 0x42150d
add ecx, edx
lea eax, [ecx*2 + 0x16]
push eax
call fcn.004095d0
add esp, 4
mov dword [esp + 0x4c], eax
mov dword [esp + 4], 0x3353316f
mov dword [esp + 8], 0x3f4a3d48
mov dword [esp + 0xc], 0x3b463955
mov dword [esp + 0x10], 0x47714537
mov word [esp + 0x14], 0x4140
mov dword [esp + 0x16], 0
mov word [esp + 0x1a], 0
mov eax, 0xb84662b4
mov ecx, 0x4b
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x47b99d50]
mov esi, ecx
xor esi, eax
and esi, edx
xor esi, eax
lea edx, [esi + 0x66a0127b]
mov ebp, edx
and ebp, 1
mov edi, edx
and edi, 0xfe
xor edx, 1
add edx, esi
add edx, 0x66a0127b
mov esi, edx
sub esi, edi
and edx, ebp
xor esi, ebp
lea edx, [esi + edx*2]
mov byte [esp + eax + 0x47b99d50], dl
inc eax
dec ecx
cmp eax, 0xb84662cc
jne 0x421560
movzx ecx, word [esp + 4]
mov edi, dword [esp + 0x4c]
mov eax, edi
test cx, cx
je 0x4215d1
lea edx, [esp + 6]
mov eax, edi
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [edx]
add edx, 2
test cx, cx
jne 0x4215c0
mov word [eax], 0
movzx ecx, word [ebx]
test cx, cx
mov esi, dword [esp]
je 0x421601
add ebx, 2
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 0x4215f0
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [esp + 0xa4]
mov ecx, dword [ecx]
movzx edx, word [ecx]
test dx, dx
je 0x421631
add ecx, 2
nop
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x421620
mov word [eax], 0x5f
add eax, 2
mov ecx, dword [esp + 0xa8]
mov ecx, dword [ecx + 4]
movzx edx, word [ecx]
test dx, dx
je 0x421661
add ecx, 2
nop
nop
mov word [eax], dx
add eax, 2
movzx edx, word [ecx]
add ecx, 2
test dx, dx
jne 0x421650
mov word [eax], 0
mov dword [esp + 4], 0x7f7e7956
mov word [esp + 8], 0
mov eax, 0xfe1cac6a
nop
nop
nop
nop
nop
nop
movzx ecx, byte [esp + eax + 0x1e3539a]
xor ecx, eax
mov edx, ecx
and edx, 1
add ecx, 0xed
or ecx, 1
sub ecx, edx
inc cl
mov byte [esp + eax + 0x1e3539a], cl
inc eax
cmp eax, 0xfe1cac70
jne 0x421680
lea eax, [esp + 4]
push 0
push 1
push 0
push eax
push esi
push edi
push dword [esp + 0xb8]
call fcn.00421980
add esp, 0x1c
mov ebx, eax
jmp dword [0x445e40]