Function at 0x40509b
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x110
mov eax, dword [0xaa9018]
and eax, 1
jne 0x4050d0
mov eax, dword [0xaa9018]
or eax, 1
mov dword [0xaa9018], eax
mov ecx, 0xaa9048
call fcn.00402c7c
push 0x4aec53
call fcn.0048af8f
pop ecx
push dword [ebp + 8]
lea ecx, [ebp - 0xa0]
call fcn.00402966
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebp - 0xa0]
call fcn.00403096
push dword [eax]
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0xa0]
call fcn.004030aa
push dword [eax]
lea eax, [ebp - 0xc0]
push eax
lea ecx, [ebp - 0xa0]
call fcn.00403096
push dword [eax]
mov edx, 0x404aff
lea ecx, [ebp - 0xb8]
call fcn.00407a6a
add esp, 0xc
lea ecx, [ebp - 0xa0]
call fcn.00404a84
mov dword [ebp - 0x70], eax
movzx eax, byte [0xaa8f49]
test eax, eax
je 0x4051b1
mov ecx, 0xaa9048
call fcn.00407777
movzx eax, al
test eax, eax
jne 0x4051b1
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x78]
push eax
mov ecx, 0xaa9048
call fcn.00402c54
lea eax, [ebp - 0xbc]
push eax
mov ecx, 0xaa9048
call fcn.00402c46
push eax
lea ecx, [ebp - 0x78]
call fcn.00402c69
movzx eax, al
test eax, eax
je 0x4051b1
lea ecx, [ebp - 0x78]
call fcn.00407780
mov eax, dword [eax + 4]
mov dword [ebp - 0x84], eax
lea ecx, [ebp - 0xa0]
call fcn.004029eb
mov eax, dword [ebp - 0x84]
jmp 0x405679
and dword [ebp - 0xc], 0
lea eax, [ebp - 0xa0]
push eax
call fcn.00404bd8
pop ecx
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4055ca
cmp dword [0xaa8f4c], 0
jne 0x4055af
mov byte [ebp - 0x64], 1
mov byte [ebp - 0x63], 0x66
mov byte [ebp - 0x62], 4
mov byte [ebp - 0x61], 0x68
mov byte [ebp - 0x60], 0x1b
mov byte [ebp - 0x5f], 0x5d
mov byte [ebp - 0x5e], 0xd7
mov byte [ebp - 0x5d], 9
mov byte [ebp - 0x5c], 0x7d
mov byte [ebp - 0x5b], 0x39
mov byte [ebp - 0x5a], 0x32
mov byte [ebp - 0x59], 0x70
mov byte [ebp - 0x58], 0x2a
mov byte [ebp - 0x57], 0xcd
mov byte [ebp - 0x56], 0xdb
mov byte [ebp - 0x55], 0x7d
mov byte [ebp - 0x54], 0x24
mov byte [ebp - 0x53], 0xb9
mov byte [ebp - 0x52], 0xc7
mov byte [ebp - 0x51], 0xea
mov byte [ebp - 0x50], 0x90
mov byte [ebp - 0x4f], 0x9d
mov byte [ebp - 0x4e], 0xe5
mov byte [ebp - 0x4d], 0x71
mov byte [ebp - 0x4c], 0x8d
mov byte [ebp - 0x4b], 0x2b
mov byte [ebp - 0x4a], 0xed
mov byte [ebp - 0x49], 0x85
mov byte [ebp - 0x48], 0x17
mov byte [ebp - 0x47], 0x81
mov byte [ebp - 0x46], 0x58
mov byte [ebp - 0x45], 8
mov byte [ebp - 0x44], 0x33
mov byte [ebp - 0x43], 0xb
mov byte [ebp - 0x42], 0x73
mov byte [ebp - 0x41], 5
mov byte [ebp - 0x40], 0x75
mov byte [ebp - 0x3f], 0
mov byte [ebp - 0x3e], 0x56
mov byte [ebp - 0x3d], 3
mov byte [ebp - 0x3c], 0x7b
mov byte [ebp - 0x3b], 7
mov byte [ebp - 0x3a], 0x41
mov byte [ebp - 0x39], 9
mov byte [ebp - 0x38], 0x75
mov byte [ebp - 0x37], 0xa
mov byte [ebp - 0x36], 0x7f
mov byte [ebp - 0x35], 6
mov byte [ebp - 0x34], 0x48
mov byte [ebp - 0x33], 2
mov byte [ebp - 0x32], 0x89
and dword [ebp - 8], 0
and dword [ebp - 0x68], 0
jmp 0x4052ba
mov eax, dword [ebp - 8]
inc eax
inc eax
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x33
jae 0x405398
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x64]
lea eax, [eax + eax + 2]
cmp dword [ebp - 8], eax
jne 0x40533d
push 0x5627
push 1
push 0x3db
push 1
push 0
push 0
lea eax, [ebp - 0x68]
push eax
push 0x5c6c
push 0x5b4a
push 0x5e09
push 0x5113
call fcn.004069d1
add esp, 0x2c
push 0x4998
push 0x6ef4
push 0
push 0xa43
push 1
lea eax, [ebp - 8]
push eax
push 0x2be2
push 0x163c
push 0x79e4
call fcn.0040570c
add esp, 0x24
jmp 0x4052b2
mov eax, dword [ebp - 8]
movzx eax, byte [ebp + eax - 0x63]
sub eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x68]
lea eax, [eax + ecx - 1]
mov dword [ebp - 0x80], eax
push 0x71a9
push 1
push 0x38a4
push 1
push 0xd9e
push 0x3332
push 0x52c7
lea eax, [ebp - 0x80]
push eax
push 1
push 0
call fcn.00404f34
add esp, 0x28
mov eax, dword [ebp - 8]
movzx eax, byte [ebp + eax - 0x64]
mov cx, word [ebp - 0x80]
mov word [ebp + eax*2 - 0xe0], cx
jmp 0x4052b2
push 2
pop eax
imul eax, eax, 0xc
xor ecx, ecx
mov word [ebp + eax - 0xe0], cx
lea eax, [ebp - 0xe0]
push eax
lea ecx, [ebp - 0x110]
call fcn.004076c9
push eax
call fcn.00404bd8
pop ecx
mov dword [ebp - 0x6c], eax
lea ecx, [ebp - 0x110]
call fcn.004029eb
and dword [ebp - 0x10], 0
jmp 0x4053dc
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xd
jae 0x4053f1
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov word [ebp + ecx*2 - 0xe0], ax
jmp 0x4053d5
cmp dword [ebp - 0x6c], 0
je 0x4055af
mov byte [ebp - 0x30], 3
mov byte [ebp - 0x2f], 0x65
mov byte [ebp - 0x2e], 2
mov byte [ebp - 0x2d], 0x64
mov byte [ebp - 0x2c], 5
mov byte [ebp - 0x2b], 0x6e
mov byte [ebp - 0x2a], 0xa
mov byte [ebp - 0x29], 0x80
mov byte [ebp - 0x28], 3
mov byte [ebp - 0x27], 0xb5
mov byte [ebp - 0x26], 0x7d
mov byte [ebp - 0x25], 0xb
mov byte [ebp - 0x24], 0x60
mov byte [ebp - 0x23], 9
mov byte [ebp - 0x22], 0x7d
mov byte [ebp - 0x21], 8
mov byte [ebp - 0x20], 0x6e
mov byte [ebp - 0x1f], 6
mov byte [ebp - 0x1e], 0x71
mov byte [ebp - 0x1d], 7
mov byte [ebp - 0x1c], 0x83
mov byte [ebp - 0x1b], 0
mov byte [ebp - 0x1a], 0x5f
mov byte [ebp - 0x19], 4
mov byte [ebp - 0x18], 0x61
mov byte [ebp - 0x17], 1
mov byte [ebp - 0x16], 0x86
and dword [ebp - 4], 0
and dword [ebp - 0x7c], 0
jmp 0x405479
mov eax, dword [ebp - 4]
inc eax
inc eax
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0x1b
jae 0x405549
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x30]
lea eax, [eax + eax + 2]
cmp dword [ebp - 4], eax
jne 0x4054fb
push 0x7417
push 1
push 0x6f6c
push 1
lea eax, [ebp - 0x7c]
push eax
push 0x4376
push 0x1ce7
push 0x2cb4
push 1
push 1
call fcn.00404f34
add esp, 0x28
lea eax, [ebp - 4]
push eax
push 1
push 0x283e
push 1
push 0
push 1
push 0xebe
push 0x7ee1
push 0x32c
push 0x6c7c
push 0x2bd6
call fcn.004069d1
add esp, 0x2c
jmp 0x405471
mov eax, dword [ebp - 4]
movzx eax, byte [ebp + eax - 0x2f]
sub eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x7c]
lea eax, [eax + ecx - 1]
mov dword [ebp - 0x74], eax
push 0x4bec
push 0
push 0x19ff
push 0x7877
push 0x4133
lea eax, [ebp - 0x74]
push eax
call fcn.004065e8
add esp, 0x18
mov eax, dword [ebp - 4]
movzx eax, byte [ebp + eax - 0x30]
mov cl, byte [ebp - 0x74]
mov byte [ebp + eax - 0xb0], cl
jmp 0x405471
xor eax, eax
inc eax
imul eax, eax, 0xc
mov byte [ebp + eax - 0xb0], 0
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0xf8]
call fcn.004076f9
and dword [ebp - 0x14], 0
jmp 0x405576
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xd
jae 0x405589
mov eax, dword [ebp - 0x14]
mov byte [ebp + eax - 0xb0], 0
jmp 0x40556f
push 0
push 0
lea eax, [ebp - 0xf8]
push eax
push dword [ebp - 0x6c]
call fcn.00405bf9
add esp, 0x10
mov dword [0xaa8f4c], eax
lea ecx, [ebp - 0xf8]
call fcn.00402b13
cmp dword [0xaa8f4c], 0
je 0x4055ca
mov ecx, dword [ebp + 8]
call fcn.004076ee
push eax
call dword [0xaa8f4c]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x40565f
movzx eax, byte [0xaa8f49]
test eax, eax
je 0x4055f0
mov ecx, 0xaa9048
call fcn.00407777
movzx eax, al
test eax, eax
jne 0x40565f
push 0
lea eax, [ebp - 0x70]
push eax
push 0x6841
lea eax, [ebp - 0xc]
push eax
push 0xaa9048
call fcn.00406beb
add esp, 0x14
push 0x530b
push 0x2cd6
push 0x60f3
push 1
push 0x3478
push 0x25f3
push 1
push 0x2c0d
push 0x15f1
push 0xd2d
push 0x1193
push 0xaa8f49
push 0x6aa7
push 1
push 0x55cf
push 0x1f7e
push 0
push 1
call fcn.00407226
add esp, 0x48
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x88], eax
lea ecx, [ebp - 0xa0]
call fcn.004029eb
mov eax, dword [ebp - 0x88]
mov esp, ebp
pop ebp
ret