Function at 0x441c3d
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4aa88b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x12c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov eax, dword [0xad995c]
and eax, 1
jne 0x441c8e
mov eax, dword [0xad995c]
or eax, 1
mov dword [0xad995c], eax
mov ecx, 0xad99a4
call fcn.004467f1
push 0x4ab12f
call fcn.004945cd
pop ecx
push dword [ebp + 8]
lea ecx, [ebp - 0xdc]
call fcn.004466db
lea eax, [ebp - 0x108]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00446732
push dword [eax]
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00446746
push dword [eax]
lea eax, [ebp - 0xfc]
push eax
lea ecx, [ebp - 0xdc]
call fcn.00446732
push dword [eax]
mov edx, 0x440f5f
lea ecx, [ebp - 0x100]
call fcn.004475be
add esp, 0xc
lea ecx, [ebp - 0xdc]
call fcn.00440e4c
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x94], 0x5c16
mov dword [ebp - 0xb8], 0xabecc8
cmp dword [ebp - 0x94], 0x5dda
jle 0x441df9
and dword [ebp - 0x84], 0
jmp 0x441d36
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x3923
jge 0x441df9
and dword [ebp - 0x90], 0
jmp 0x441d5c
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0x360b
jge 0x441df4
and dword [ebp - 0x8c], 0
jmp 0x441d82
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0xc8
jge 0x441def
and dword [ebp - 0x88], 0
jmp 0x441da4
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0x3e68
jge 0x441ded
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x90]
sub eax, dword [ebp - 0x8c]
xor eax, dword [ebp - 0x88]
cdq
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], edx
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
mov ecx, 0xad8758
call fcn.0043e31e
jmp 0x441d97
jmp 0x441d75
jmp 0x441d4f
jmp 0x441d29
movzx eax, byte [0xad98e8]
test eax, eax
je 0x441e7b
mov ecx, 0xad99a4
call fcn.00446894
movzx eax, al
test eax, eax
jne 0x441e7b
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0x98]
push eax
mov ecx, 0xad99a4
call fcn.0044689d
lea eax, [ebp - 0x10c]
push eax
mov ecx, 0xad99a4
call fcn.00446886
push eax
lea ecx, [ebp - 0x98]
call fcn.004468b8
movzx eax, al
test eax, eax
je 0x441e7b
lea ecx, [ebp - 0x98]
call fcn.004468b2
mov eax, dword [eax + 4]
mov dword [ebp - 0xb4], eax
lea ecx, [ebp - 0xdc]
call fcn.00446728
mov eax, dword [ebp - 0xb4]
jmp 0x44238e
and dword [ebp - 4], 0
cmp dword [ebp - 0x94], 0x59d8
jge 0x441e9b
mov edx, dword [ebp - 0xb8]
mov ecx, 0xad8758
call fcn.0043fcc4
jmp 0x441eb7
or dword [ebp - 4], 0xffffffff
jmp 0x441ec1
and dword [ebp - 0x1c], 0
lea eax, [ebp - 0xdc]
push eax
call fcn.00441594
pop ecx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x442312
cmp dword [0xad98e4], 0
jne 0x4422f7
mov byte [ebp - 0x44], 5
mov byte [ebp - 0x43], 0xa1
mov byte [ebp - 0x42], 6
mov byte [ebp - 0x41], 0x5f
mov byte [ebp - 0x40], 4
mov byte [ebp - 0x3f], 0x56
mov byte [ebp - 0x3e], 7
mov byte [ebp - 0x3d], 0x57
mov byte [ebp - 0x3c], 9
mov byte [ebp - 0x3b], 0x56
mov byte [ebp - 0x3a], 8
mov byte [ebp - 0x39], 0x4a
mov byte [ebp - 0x38], 9
mov byte [ebp - 0x37], 0xa1
mov byte [ebp - 0x36], 0x25
mov byte [ebp - 0x35], 0xf1
mov byte [ebp - 0x34], 0x49
mov byte [ebp - 0x33], 0x74
mov byte [ebp - 0x32], 0x65
mov byte [ebp - 0x31], 0xf7
mov byte [ebp - 0x30], 0x91
mov byte [ebp - 0x2f], 0x7a
mov byte [ebp - 0x2e], 3
mov byte [ebp - 0x2d], 0x40
mov byte [ebp - 0x2c], 1
mov byte [ebp - 0x2b], 0xb
mov byte [ebp - 0x2a], 2
mov byte [ebp - 0x29], 0x17
mov byte [ebp - 0x28], 0xa
mov byte [ebp - 0x27], 0x1e
mov byte [ebp - 0x26], 0
mov byte [ebp - 0x25], 0x27
mov byte [ebp - 0x24], 0xb
mov byte [ebp - 0x23], 0x27
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x44]
or eax, 0xcd
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x44]
and ecx, 0xcd
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x44]
mov word [ebp + ecx*2 - 0xf8], ax
mov dword [ebp - 0x18], 2
and dword [ebp - 0x78], 0
jmp 0x441fbf
mov eax, dword [ebp - 0x18]
inc eax
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x22
jae 0x442077
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x44]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x18], eax
jne 0x441ffd
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x44]
inc eax
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x44]
mov ecx, dword [ebp - 0x18]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x18], eax
jmp 0x441fb7
mov eax, dword [ebp - 0x18]
movzx eax, byte [ebp + eax - 0x43]
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x78]
movzx ecx, byte [ebp + ecx - 0x46]
movzx ecx, word [ebp + ecx*2 - 0xf8]
or eax, ecx
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0x43]
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x78]
movzx edx, byte [ebp + edx - 0x46]
movzx edx, word [ebp + edx*2 - 0xf8]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [ebp + ecx - 0x44]
mov word [ebp + ecx*2 - 0xf8], ax
push 0x6728
lea eax, [ebp - 0x78]
push eax
push 0
push 0
push 0x3efb
push 0x2001
push 0x54c8
push 0x7692
call fcn.00445def
add esp, 0x20
jmp 0x441fb7
push 2
pop eax
imul eax, eax, 0xc
xor ecx, ecx
mov word [ebp + eax - 0xf8], cx
lea eax, [ebp - 0xf8]
push eax
lea ecx, [ebp - 0x13c]
call fcn.00446703
push eax
call fcn.00441594
pop ecx
mov dword [ebp - 0x9c], eax
lea ecx, [ebp - 0x13c]
call fcn.00446728
and dword [ebp - 0x7c], 0
jmp 0x4420be
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0xd
jae 0x4420d3
xor eax, eax
mov ecx, dword [ebp - 0x7c]
mov word [ebp + ecx*2 - 0xf8], ax
jmp 0x4420b7
cmp dword [ebp - 0x9c], 0
je 0x4422f7
mov byte [ebp - 0x74], 3
mov byte [ebp - 0x73], 0x21
mov byte [ebp - 0x72], 8
mov byte [ebp - 0x71], 5
mov byte [ebp - 0x70], 2
mov byte [ebp - 0x6f], 0
mov byte [ebp - 0x6e], 6
mov byte [ebp - 0x6d], 3
mov byte [ebp - 0x6c], 0x15
mov byte [ebp - 0x6b], 0x61
mov byte [ebp - 0x6a], 0xd0
mov byte [ebp - 0x69], 0xe1
mov byte [ebp - 0x68], 0xc3
mov byte [ebp - 0x67], 0x7a
mov byte [ebp - 0x66], 0xb7
mov byte [ebp - 0x65], 0xcf
mov byte [ebp - 0x64], 0x73
mov byte [ebp - 0x63], 0xdb
mov byte [ebp - 0x62], 0x21
mov byte [ebp - 0x61], 0x44
mov byte [ebp - 0x60], 0xfe
mov byte [ebp - 0x5f], 0x2c
mov byte [ebp - 0x5e], 0xef
mov byte [ebp - 0x5d], 0xd9
mov byte [ebp - 0x5c], 1
mov byte [ebp - 0x5b], 0x80
mov byte [ebp - 0x5a], 0xe3
mov byte [ebp - 0x59], 0x82
mov byte [ebp - 0x58], 0x53
mov byte [ebp - 0x57], 0xf
mov byte [ebp - 0x56], 0xa
mov byte [ebp - 0x55], 0x1b
mov byte [ebp - 0x54], 1
mov byte [ebp - 0x53], 0x16
mov byte [ebp - 0x52], 0xb
mov byte [ebp - 0x51], 0x38
mov byte [ebp - 0x50], 4
mov byte [ebp - 0x4f], 0x1b
mov byte [ebp - 0x4e], 7
mov byte [ebp - 0x4d], 0x3e
mov byte [ebp - 0x4c], 0
mov byte [ebp - 0x4b], 0x3e
mov byte [ebp - 0x4a], 5
mov byte [ebp - 0x49], 0x25
mov byte [ebp - 0x48], 9
mov byte [ebp - 0x47], 0x1b
xor eax, eax
inc eax
shl eax, 0
movzx eax, byte [ebp + eax - 0x74]
or eax, 0x45
xor ecx, ecx
inc ecx
shl ecx, 0
movzx ecx, byte [ebp + ecx - 0x74]
and ecx, 0x45
sub eax, ecx
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
movzx ecx, byte [ebp + ecx - 0x74]
mov byte [ebp + ecx - 0xb0], al
mov dword [ebp - 0x14], 2
and dword [ebp - 0x20], 0
jmp 0x4421dd
mov eax, dword [ebp - 0x14]
inc eax
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x2e
jae 0x44228e
xor eax, eax
inc eax
imul eax, eax, 0
movzx eax, byte [ebp + eax - 0x74]
lea eax, [eax + eax + 2]
cmp dword [ebp - 0x14], eax
jne 0x44221b
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0x74]
inc eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0x74]
mov ecx, dword [ebp - 0x14]
lea eax, [ecx + eax - 1]
mov dword [ebp - 0x14], eax
jmp 0x4421d5
mov eax, dword [ebp - 0x14]
movzx eax, byte [ebp + eax - 0x73]
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x20]
movzx ecx, byte [ebp + ecx - 0x76]
movsx ecx, byte [ebp + ecx - 0xb0]
add eax, ecx
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0x73]
mov edx, dword [ebp - 0x14]
sub edx, dword [ebp - 0x20]
movzx edx, byte [ebp + edx - 0x76]
movsx edx, byte [ebp + edx - 0xb0]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0x73]
mov edx, dword [ebp - 0x14]
sub edx, dword [ebp - 0x20]
movzx edx, byte [ebp + edx - 0x76]
movsx edx, byte [ebp + edx - 0xb0]
and ecx, edx
sub eax, ecx
mov ecx, dword [ebp - 0x14]
movzx ecx, byte [ebp + ecx - 0x74]
mov byte [ebp + ecx - 0xb0], al
and dword [ebp - 0x20], 0
jmp 0x4421d5
xor eax, eax
inc eax
imul eax, eax, 0xc
mov byte [ebp + eax - 0xb0], 0
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0x124]
call fcn.0044676f
and dword [ebp - 0x80], 0
jmp 0x4422bb
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0xd
jae 0x4422ce
mov eax, dword [ebp - 0x80]
mov byte [ebp + eax - 0xb0], 0
jmp 0x4422b4
push 0
push 0
lea eax, [ebp - 0x124]
push eax
push dword [ebp - 0x9c]
call fcn.00443199
add esp, 0x10
mov dword [0xad98e4], eax
lea ecx, [ebp - 0x124]
call fcn.0044679e
cmp dword [0xad98e4], 0
je 0x442312
mov ecx, dword [ebp + 8]
call fcn.00446764
push eax
call dword [0xad98e4]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x442374
movzx eax, byte [0xad98e8]
test eax, eax
je 0x442334
mov ecx, 0xad99a4
call fcn.00446894
movzx eax, al
test eax, eax
jne 0x442374
lea eax, [ebp - 0xa0]
push eax
mov ecx, 0xad99a4
call fcn.00446823
mov ecx, dword [ebp - 0x1c]
mov dword [eax], ecx
push 0x7b79
push 0x6e87
push 0
push 1
push 0x2397
push 0x30b4
push 0xad98e8
push 0x64a5
call fcn.00445def
add esp, 0x20
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xbc], eax
lea ecx, [ebp - 0xdc]
call fcn.00446728
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret