Function at 0x4ff75c
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x19
push 0
push 0
dec ecx
jne 0x4ff764
push ebx
push esi
push edi
mov esi, dword [0x50eeec]
xor eax, eax
push ebp
push 0x4ffc81
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.004ff674
test al, al
je 0x4ffc41
mov eax, dword [esi]
mov eax, dword [eax + 0x60]
xor ecx, ecx
mov edx, 0x4ffc98
call fcn.004fec78
mov eax, dword [esi]
mov eax, dword [eax + 0x60]
xor ecx, ecx
mov edx, 0x4ffcbc
call fcn.004fec78
mov eax, dword [esi]
mov eax, dword [eax + 0x60]
xor ecx, ecx
mov edx, 0x4ffce0
call fcn.004fec78
call fcn.004ff674
test al, al
je 0x4ffc41
lea eax, [ebp - 4]
push eax
mov eax, dword [0x50ed98]
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
mov byte [ebp - 8], 0
lea edx, [ebp - 0xc]
xor ecx, ecx
mov eax, 0x4ffd04
call fcn.0040a7d8
mov edx, dword [ebp - 4]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov cl, 1
call fcn.004fec78
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov edx, dword [eax]
call dword [edx + 0x14c]
test eax, eax
je 0x4ffc41
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov eax, dword [eax + 0x30]
xor edx, edx
call fcn.004b024c
mov edx, dword [eax]
call dword [edx + 0x58]
test eax, eax
je 0x4ffc41
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov eax, dword [eax + 0x30]
xor edx, edx
call fcn.004b024c
mov edx, dword [eax]
call dword [edx + 0x58]
mov edi, eax
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0xc], edi
mov byte [ebp - 8], 0
lea edx, [ebp - 0xc]
xor ecx, ecx
mov eax, 0x4ffd38
call fcn.0040a7d8
mov edx, dword [ebp - 0x10]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov cl, 1
call fcn.004fec78
mov eax, dword [esi]
mov ebx, dword [eax + 0x6c]
jmp 0x4ff8de
lea eax, [ebp - 0x14]
push eax
mov edx, 0x4ffd6c
mov eax, ebx
call fcn.004bb81c
lea edx, [ebp - 0x28]
mov ecx, dword [eax]
call dword [ecx + 0x60]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
mov edx, 0x4ffd80
mov eax, ebx
call fcn.004bb81c
lea edx, [ebp - 0x2c]
mov ecx, dword [eax]
call dword [ecx + 0x60]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x18], 0xb
lea edx, [ebp - 0x24]
mov ecx, 1
mov eax, 0x4ffd90
call fcn.0040a7d8
mov edx, dword [ebp - 0x14]
mov eax, dword [esi]
mov eax, dword [eax + 0x60]
xor ecx, ecx
call fcn.004fec78
mov eax, ebx
call fcn.004bcec0
cmp byte [ebx + 0xa1], 0
je 0x4ff876
lea eax, [ebp - 0x30]
push eax
mov dword [ebp - 0xc], edi
mov byte [ebp - 8], 0
lea edx, [ebp - 0xc]
xor ecx, ecx
mov eax, 0x4ffdc4
call fcn.0040a7d8
mov edx, dword [ebp - 0x30]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov cl, 1
call fcn.004fec78
mov eax, dword [esi]
mov ebx, dword [eax + 0x6c]
jmp 0x4ff97f
lea eax, [ebp - 0x34]
push eax
mov edx, 0x4ffdf8
mov eax, ebx
call fcn.004bb81c
lea edx, [ebp - 0x38]
mov ecx, dword [eax]
call dword [ecx + 0x60]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
mov edx, 0x4ffe0c
mov eax, ebx
call fcn.004bb81c
lea edx, [ebp - 0x3c]
mov ecx, dword [eax]
call dword [ecx + 0x60]
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x18], 0xb
lea edx, [ebp - 0x24]
mov ecx, 1
mov eax, 0x4ffe20
call fcn.0040a7d8
mov edx, dword [ebp - 0x34]
mov eax, dword [esi]
mov eax, dword [eax + 0x60]
xor ecx, ecx
call fcn.004fec78
mov eax, ebx
call fcn.004bcec0
cmp byte [ebx + 0xa1], 0
je 0x4ff917
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0xc], edi
mov byte [ebp - 8], 0
lea edx, [ebp - 0xc]
xor ecx, ecx
mov eax, 0x4ffe54
call fcn.0040a7d8
mov edx, dword [ebp - 0x40]
mov eax, dword [esi]
mov eax, dword [eax + 0x6c]
mov cl, 1
call fcn.004fec78
mov eax, dword [esi]
mov ebx, dword [eax + 0x6c]
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x14c]
test eax, eax
jle 0x4ffc41
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0xa0]
push eax
mov edx, 0x4ffe88
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x9c], eax
mov byte [ebp - 0x98], 0xb
lea eax, [ebp - 0xa4]
push eax
mov edx, 0x4ffeb4
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x94], eax
mov byte [ebp - 0x90], 0xb
lea eax, [ebp - 0xa8]
push eax
mov edx, 0x4ffec4
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x8c], eax
mov byte [ebp - 0x88], 0xb
lea eax, [ebp - 0xac]
push eax
mov edx, 0x4ffed0
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x84], eax
mov byte [ebp - 0x80], 0xb
lea eax, [ebp - 0xb0]
push eax
mov edx, 0x4ffedc
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x7c], eax
mov byte [ebp - 0x78], 0xb
lea eax, [ebp - 0xb4]
push eax
mov edx, 0x4ffeec
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x74], eax
mov byte [ebp - 0x70], 0xb
lea eax, [ebp - 0xb8]
push eax
mov edx, 0x4ffefc
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x6c], eax
mov byte [ebp - 0x68], 0xb
lea eax, [ebp - 0xbc]
push eax
mov edx, 0x4fff0c
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x64], eax
mov byte [ebp - 0x60], 0xb
lea eax, [ebp - 0xc0]
push eax
mov edx, 0x4fff1c
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x5c], eax
mov byte [ebp - 0x58], 0xb
lea eax, [ebp - 0xc4]
push eax
mov edx, 0x4fff2c
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x54], eax
mov byte [ebp - 0x50], 0xb
lea eax, [ebp - 0xc8]
push eax
mov edx, 0x4fff40
mov eax, ebx
call fcn.004bb81c
mov edx, dword [eax]
call dword [edx + 0x44]
mov ecx, 0x4ffe9c
mov edx, 0x4ffea8
call fcn.00437fa4
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 0x48], 0xb
lea edx, [ebp - 0x9c]
mov ecx, 0xa
mov eax, 0x4fff50
call fcn.0040a7d8
mov edx, dword [ebp - 0x44]
mov eax, dword [esi]
mov eax, dword [eax + 0x60]
xor ecx, ecx
call fcn.004fec78
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4ffc88
lea eax, [ebp - 0xc8]
mov edx, 0xb
call fcn.004048e8
lea eax, [ebp - 0x44]
mov edx, 8
call fcn.004048e8
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.004048e8
lea eax, [ebp - 4]
call fcn.004048c4
ret