Function at 0x5980b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x70
call fcn.005bd220
mov eax, dword [0x6ce8d4]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x48], 0
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x58]
mov ecx, dword [eax + 0x344]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x58], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x58]
mov edx, dword [ecx + 0x344]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x58]
and ecx, 0xe0
jne 0x59811a
mov edx, dword [ebp - 0x5c]
and edx, 0x40
jne 0x59811a
mov dword [ebp - 0x50], 0
jmp 0x598121
mov dword [ebp - 0x50], 1
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x598148
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc0]
cmp dword [edx + 0xd8], 0
je 0x598148
mov dword [ebp - 0x54], 1
jmp 0x59814f
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp + 8]
cmp dword [ecx], 0x300
jne 0x598177
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x58]
cmp dword [eax + 0x418], 0
jne 0x598177
mov eax, dword [ebp - 0x38]
jmp 0x598abf
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp + 0x10]
jb 0x59818f
xor eax, eax
jmp 0x598abf
mov eax, dword [ebp + 8]
cmp dword [eax + 0x6c], 0
jne 0x598216
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x124], 1
jne 0x598216
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc0]
cmp dword [eax + 0xd0], 0
je 0x598216
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
sub ecx, 4
jns 0x5981c8
xor eax, eax
jmp 0x598abf
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x58]
cmp dword [eax + 0x418], 0
je 0x598329
push 0
lea ecx, [ebp - 0x3c]
push ecx
push 0
mov edx, dword [ebp + 8]
push edx
call fcn.005ac950
add esp, 0x10
test eax, eax
jne 0x598263
push 0x6a8
push 0x67c0b4
push 0x44
push 0x116
push 0x14
call fcn.004b9a70
add esp, 0x14
xor eax, eax
jmp 0x598abf
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp + 0x10]
jae 0x59827b
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x3c]
add edx, 4
cmp ecx, edx
jae 0x598282
xor eax, eax
jmp 0x598abf
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp - 0x2c]
mov byte [edx + ecx], 0xff
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 1
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x3c]
sar eax, 8
and eax, 0xff
mov ecx, 1
imul edx, ecx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + edx], al
mov edx, dword [ebp - 0x3c]
and edx, 0xff
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], dl
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x3c]
push eax
lea ecx, [ebp - 0x3c]
push ecx
mov edx, dword [ebp - 0x2c]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.005ac950
add esp, 0x10
test eax, eax
jne 0x598320
push 0x6b8
push 0x67c0b4
push 0x44
push 0x116
push 0x14
call fcn.004b9a70
add esp, 0x14
xor eax, eax
jmp 0x598abf
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x2c], ecx
cmp dword [ebp - 0x4c], 0
je 0x598426
lea edx, [ebp - 0x34]
push edx
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0059cb30
add esp, 0xc
cmp dword [ebp - 0x34], 0xff
jbe 0x598372
push 0x6c9
push 0x67c0b4
push 0x44
push 0x116
push 0x14
call fcn.004b9a70
add esp, 0x14
xor eax, eax
jmp 0x598abf
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp + 0x10]
jae 0x59838a
mov eax, dword [ebp + 0x10]
sub eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x34]
add ecx, 5
cmp eax, ecx
jae 0x598391
xor eax, eax
jmp 0x598abf
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0xb
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x34]
add edx, 1
shr edx, 8
and edx, 0xff
mov eax, 1
imul ecx, eax, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + ecx], dl
mov ecx, dword [ebp - 0x34]
add ecx, 1
and ecx, 0xff
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], cl
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x2c]
mov al, byte [ebp - 0x34]
mov byte [edx], al
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x34]
push edx
mov eax, dword [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.005d7410
add esp, 0xc
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x34]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x140], 0
je 0x5984b9
push 0
push 0
push 0x20
mov ecx, dword [ebp + 8]
push ecx
call fcn.0057fa40
add esp, 0x10
and eax, 0x4000
jne 0x5984b9
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp + 0x10]
jae 0x598462
mov eax, dword [ebp + 0x10]
sub eax, dword [ebp - 0x2c]
cmp eax, 4
jae 0x598469
xor eax, eax
jmp 0x598abf
mov ecx, 1
imul edx, ecx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0
mov ecx, 1
shl ecx, 0
mov edx, dword [ebp - 0x2c]
mov byte [edx + ecx], 0x23
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x2c], eax
mov ecx, 1
imul edx, ecx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0
mov ecx, 1
shl ecx, 0
mov edx, dword [ebp - 0x2c]
mov byte [edx + ecx], 0
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x2c], eax
jmp 0x5984c6
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x140], 0
mov edx, dword [ebp + 8]
cmp dword [edx + 0x12c], 0
je 0x59853a
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp + 0x10]
jae 0x5984e5
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
cmp ecx, 4
jae 0x5984ec
xor eax, eax
jmp 0x598abf
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 5
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov ecx, dword [eax + 0x64]
mov edx, dword [ecx + 0x38]
and edx, 8
je 0x598639
mov eax, dword [ebp + 8]
cmp dword [eax + 0x180], 0
je 0x598639
push 0
lea ecx, [ebp - 0x40]
push ecx
push 0
mov edx, dword [ebp + 8]
push edx
call fcn.005ac3a0
add esp, 0x10
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp + 0x10]
jae 0x59858b
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x40]
add edx, 4
cmp ecx, edx
jae 0x598592
xor eax, eax
jmp 0x598abf
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp - 0x2c]
mov byte [edx + ecx], 0
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0xe
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x40]
sar eax, 8
and eax, 0xff
mov ecx, 1
imul edx, ecx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + edx], al
mov edx, dword [ebp - 0x40]
and edx, 0xff
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], dl
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x40]
push eax
lea ecx, [ebp - 0x40]
push ecx
mov edx, dword [ebp - 0x2c]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.005ac3a0
add esp, 0x10
test eax, eax
je 0x598630
push 0x71e
push 0x67c0b4
push 0x44
push 0x116
push 0x14
call fcn.004b9a70
add esp, 0x14
xor eax, eax
jmp 0x598abf
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x40]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x58]
mov ecx, dword [eax + 0x344]
mov edx, dword [ecx + 8]
and edx, 0xffff
cmp edx, 0x80
je 0x598675
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x58]
mov edx, dword [ecx + 0x344]
mov eax, dword [edx + 8]
and eax, 0xffff
cmp eax, 0x81
jne 0x598757
push 0
push 0
push 0x20
mov ecx, dword [ebp + 8]
push ecx
call fcn.0057fa40
add esp, 0x10
and eax, 0x80000000
je 0x598757
mov byte [ebp - 0x28], 0xfd
mov byte [ebp - 0x27], 0xe8
mov byte [ebp - 0x26], 0
mov byte [ebp - 0x25], 0x20
mov byte [ebp - 0x24], 0x30
mov byte [ebp - 0x23], 0x1e
mov byte [ebp - 0x22], 0x30
mov byte [ebp - 0x21], 8
mov byte [ebp - 0x20], 6
mov byte [ebp - 0x1f], 6
mov byte [ebp - 0x1e], 0x2a
mov byte [ebp - 0x1d], 0x85
mov byte [ebp - 0x1c], 3
mov byte [ebp - 0x1b], 2
mov byte [ebp - 0x1a], 2
mov byte [ebp - 0x19], 9
mov byte [ebp - 0x18], 0x30
mov byte [ebp - 0x17], 8
mov byte [ebp - 0x16], 6
mov byte [ebp - 0x15], 6
mov byte [ebp - 0x14], 0x2a
mov byte [ebp - 0x13], 0x85
mov byte [ebp - 0x12], 3
mov byte [ebp - 0x11], 2
mov byte [ebp - 0x10], 2
mov byte [ebp - 0xf], 0x16
mov byte [ebp - 0xe], 0x30
mov byte [ebp - 0xd], 8
mov byte [ebp - 0xc], 6
mov byte [ebp - 0xb], 6
mov byte [ebp - 0xa], 0x2a
mov byte [ebp - 9], 0x85
mov byte [ebp - 8], 3
mov byte [ebp - 7], 2
mov byte [ebp - 6], 2
mov byte [ebp - 5], 0x17
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp + 0x10]
jae 0x598735
mov eax, dword [ebp + 0x10]
sub eax, dword [ebp - 0x2c]
cmp eax, 0x24
jae 0x59873c
xor eax, eax
jmp 0x598abf
push 0x24
lea ecx, [ebp - 0x28]
push ecx
mov edx, dword [ebp - 0x2c]
push edx
call fcn.005d7410
add esp, 0xc
mov eax, dword [ebp - 0x2c]
add eax, 0x24
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x184]
and edx, 1
je 0x5987ff
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp + 0x10]
jae 0x59877c
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
cmp ecx, 5
jae 0x598783
xor eax, eax
jmp 0x598abf
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 0xf
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x2c]
mov byte [eax + edx], 1
mov ecx, dword [ebp - 0x2c]
add ecx, 2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x184]
and eax, 4
je 0x5987f0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx], 2
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
jmp 0x5987ff
mov eax, dword [ebp - 0x2c]
mov byte [eax], 1
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x58]
mov ecx, dword [eax + 0x41c]
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x58]
mov dword [eax + 0x41c], 0
cmp dword [ebp - 0x64], 0
je 0x598927
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xe4]
cmp dword [edx + 0x1a4], 0
je 0x598927
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xe4]
mov edx, dword [ecx + 0x1a8]
push edx
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x6c]
push ecx
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xe4]
mov edx, dword [ecx + 0x1a4]
call edx
add esp, 0x10
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jne 0x598927
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp + 0x10]
jae 0x598893
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x44]
add edx, 4
cmp ecx, edx
jae 0x59889a
xor eax, eax
jmp 0x598abf
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp - 0x2c]
mov byte [edx + ecx], 0x33
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0x74
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x44]
shr eax, 8
and eax, 0xff
mov ecx, 1
imul edx, ecx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + edx], al
mov edx, dword [ebp - 0x44]
and edx, 0xff
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], dl
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x44]
push eax
mov ecx, dword [ebp - 0x6c]
push ecx
mov edx, dword [ebp - 0x2c]
push edx
call fcn.005d7410
add esp, 0xc
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x58]
mov dword [edx + 0x41c], 1
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
lea edx, [ebp - 0x2c]
push edx
push 1
mov eax, dword [ebp + 8]
push eax
call fcn.0059e730
add esp, 0x14
test eax, eax
jne 0x59894c
xor eax, eax
jmp 0x598abf
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x58]
cmp dword [edx + 0x424], 0
je 0x598a6f
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x58]
mov edx, dword [ecx + 0x424]
mov dword [ebp - 0x70], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x58]
mov edx, dword [ecx + 0x428]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp + 0x10]
jae 0x598995
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
add edx, 7
cmp ecx, edx
jae 0x59899c
xor eax, eax
jmp 0x598abf
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp - 0x2c]
mov byte [edx + ecx], 0
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], 0x10
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x30]
add eax, 3
shr eax, 8
and eax, 0xff
mov ecx, 1
imul edx, ecx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + edx], al
mov edx, dword [ebp - 0x30]
add edx, 3
and edx, 0xff
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], dl
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x30]
add eax, 1
shr eax, 8
and eax, 0xff
mov ecx, 1
imul edx, ecx, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + edx], al
mov edx, dword [ebp - 0x30]
add edx, 1
and edx, 0xff
mov eax, 1
shl eax, 0
mov ecx, dword [ebp - 0x2c]
mov byte [ecx + eax], dl
mov edx, dword [ebp - 0x2c]
add edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x2c]
mov cl, byte [ebp - 0x30]
mov byte [eax], cl
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x70]
push ecx
mov edx, dword [ebp - 0x2c]
push edx
call fcn.005d7410
add esp, 0xc
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [ebp - 0x38]
sub ecx, 2
mov dword [ebp - 0x48], ecx
jne 0x598a82
mov eax, dword [ebp - 0x38]
jmp 0x598abf
mov edx, dword [ebp - 0x48]
sar edx, 8
and edx, 0xff
mov eax, 1
imul ecx, eax, 0
mov eax, dword [ebp - 0x38]
mov byte [eax + ecx], dl
mov ecx, dword [ebp - 0x48]
and ecx, 0xff
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x38]
mov byte [eax + edx], cl
mov ecx, dword [ebp - 0x38]
add ecx, 2
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005bcf27
mov esp, ebp
pop ebp
ret