Function at 0x423620
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x160
mov dword [esp + 0x10], 0x2b63250d
mov dword [esp + 0x14], 0x2f58295a
mov dword [esp + 0x18], 0x334b2d6a
mov dword [esp + 0x1c], 0x37573146
mov dword [esp + 0x20], 0x3b34351d
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x33], 0
mov dword [esp + 0x74], 0
mov ecx, dword [esp + 0x74]
cmp ecx, 0x26
ja 0x4236e4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x74]
movzx esi, byte [esp + edx + 0x10]
lea edx, [ecx + esi]
add edx, 0xdb903ca5
add ecx, 0xa5
and ecx, esi
add ecx, ecx
mov esi, edx
not esi
and esi, ecx
not ecx
and ecx, edx
sub ecx, esi
add cl, 0x7d
mov edx, dword [esp + 0x74]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 0x74]
mov ecx, dword [esp + 0x74]
cmp ecx, 0x27
jb 0x4236a0
lea esi, [esp + 0x116]
lea edx, [esp + 0x10]
mov ecx, 5
mov edi, esi
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0x12a]
xor ecx, ecx
xchg esi, eax
rep movsw word es:[edi], word [esi]
xchg esi, eax
lea edi, [esp + 0xb0]
push edi
push 0
push 0
push 9
push esi
push 0
call dword [0x44a668]
mov ebx, dword [esp + 0xb0]
test ebx, ebx
jns 0x423733
mov eax, 0xffffffff
jmp 0x423736
lea eax, [ebx + ebx]
push eax
call fcn.00437310
add esp, 4
push edi
push ebx
mov dword [esp + 0x78], eax
push eax
push 9
push esi
push 0
call dword [0x44a668]
mov dword [esp + 0x10], 0xbb13b972
mov dword [esp + 0x14], 0xbf19bd2f
mov dword [esp + 0x18], 0xa332a12f
mov dword [esp + 0x1c], 0xa7a4a506
lea ebx, [esp + 0x20]
mov dword [esp + 0x20], 0
mov word [esp + 0x24], 0
mov dword [esp + 0x74], 0
mov eax, dword [esp + 0x74]
cmp eax, 0x15
ja 0x4237e8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x74]
movzx edx, byte [esp + ecx + 0x10]
lea esi, [eax - 0x8b497b9]
lea ecx, [eax + edx]
add ecx, 0xf74b6847
and esi, edx
add eax, 0x47
and eax, edx
add eax, esi
mov edx, ecx
not edx
and edx, eax
not eax
and eax, ecx
sub eax, edx
add al, 0xf
mov ecx, dword [esp + 0x74]
mov byte [esp + ecx + 0x10], al
inc dword [esp + 0x74]
mov eax, dword [esp + 0x74]
cmp eax, 0x16
jb 0x4237a0
lea edi, [esp + 0xec]
lea edx, [esp + 0x10]
mov ecx, 4
xchg esi, edx
rep movsd dword es:[edi], dword [esi]
xchg esi, edx
lea edi, [esp + 0xfc]
mov edx, ebx
xor ecx, ecx
xchg esi, edx
rep movsw word es:[edi], word [esi]
xchg esi, edx
mov dword [esp + 0x10], 0xf31bcd08
mov dword [esp + 0x14], 0xf711f167
mov dword [esp + 0x18], 0xfb6cf567
mov dword [esp + 0x1c], 0xff39f91c
mov dword [esp + 0x20], 0xe370fd1d
mov dword [esp + 0x24], 0xe770e101
mov dword [esp + 0x28], 0xebeae57d
lea esi, [esp + 0x2c]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x74], 0
mov ecx, dword [esp + 0x74]
cmp ecx, 0x2b
ja 0x4238da
nop
nop
nop
mov edx, dword [esp + 0x74]
mov ecx, dword [esp + 0x74]
movzx edi, byte [esp + ecx + 0x10]
lea ecx, [edx + edi]
add ecx, 0x7b50639e
add edx, 0x7b50639e
mov ebx, edi
not ebx
or ebx, edx
add ebx, edi
and edx, edi
add edx, ebx
inc edx
mov edi, edx
xor edi, ecx
not edx
and edx, ecx
add edx, edx
sub edx, edi
mov ecx, edx
xor ecx, 0xad
and edx, 0x2d
lea ecx, [ecx + edx*2]
inc cl
mov edx, dword [esp + 0x74]
mov byte [esp + edx + 0x10], cl
inc dword [esp + 0x74]
mov ecx, dword [esp + 0x74]
cmp ecx, 0x2c
jb 0x423880
lea edx, [esp + 0x140]
lea ebx, [esp + 0x10]
mov edi, edx
mov ecx, 7
xchg esi, ebx
rep movsd dword es:[edi], dword [esi]
xchg esi, ebx
lea edi, [esp + 0x15c]
xor ecx, ecx
xchg esi, esi
rep movsw word es:[edi], word [esi]
xchg esi, esi
mov dword [esp + 0x10], 0xbeb05c2
mov dword [esp + 0x14], 0xfed099f
mov dword [esp + 0x18], 0x339a0d9f
mov dword [esp + 0x1c], 0x37c031d6
mov dword [esp + 0x20], 0x3bf235c2
lea ebx, [esp + 0x24]
mov word [esp + 0x24], 0x393a
mov dword [esp + 0x26], 0
mov dword [esp + 0x2a], 0
mov dword [esp + 0x2e], 0
mov dword [esp + 0x32], 0
mov dword [esp + 0x36], 0
mov dword [esp + 0x3a], 0
mov dword [esp + 0x74], 0
mov ecx, dword [esp + 0x74]
cmp ecx, 0x2d
ja 0x4239c4
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x74]
movzx esi, byte [esp + esi + 0x10]
lea edi, [ecx - 0x71d6ad2b]
lea eax, [ecx + 0xd5]
xor eax, edi
and edi, esi
and eax, esi
add ecx, esi
add ecx, 0x8e2952d5
lea eax, [eax + edi*2]
sub ecx, eax
add cl, 0x2d
mov eax, dword [esp + 0x74]
mov byte [esp + eax + 0x10], cl
inc dword [esp + 0x74]
mov eax, dword [esp + 0x74]
cmp eax, 0x2e
jb 0x423980
lea esi, [esp + 0x12a]
lea eax, [esp + 0x10]
mov ecx, 5
mov edi, esi
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea edi, [esp + 0x13e]
mov ecx, 1
xchg esi, ebx
rep movsw word es:[edi], word [esi]
xchg esi, ebx
lea eax, [esp + 0xec]
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], esi
mov eax, dword [esp + 0x70]
add eax, 2
mov dword [esp + 0xcc], eax
xor ecx, ecx
xor eax, eax
mov dword [esp + 0xa4], 0
cmp ecx, 3
setne al
mov eax, dword [eax*4 + 0x445558]
mov ecx, 0x53f7f010
xor ecx, dword [0x445560]
add eax, ecx
inc eax
xor edx, edx
jmp eax