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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
push ebx
push esi
mov dword [0x519a88], ecx
mov ecx, 0x519a1c
push edi
call fcn.00407109
mov ecx, 0x519874
call fcn.00407109
mov ecx, 0x5199fc
call fcn.00407109
mov edx, 0x512cbb
mov ecx, 0x519a44
call section..text
mov edx, 0x5124b3
mov ecx, 0x5199b4
call section..text
mov edx, 0x5128b7
mov ecx, 0x519870
call section..text
push 0x519898
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [ebp - 0x68], 7
xor ebx, ebx
mov byte [ebp - 0x64], 0x74
mov edx, ebx
mov byte [ebp - 0x63], 7
mov byte [ebp - 0x62], 0x72
mov byte [ebp - 0x61], 7
mov byte [ebp - 0x60], 0x64
mov byte [ebp - 0x5f], 7
mov byte [ebp - 0x5e], 0x64
mov byte [ebp - 0x5d], 7
mov byte [ebp - 0x5c], 0x62
mov byte [ebp - 0x5b], 7
mov byte [ebp - 0x5a], 0x74
mov byte [ebp - 0x59], 7
mov byte [ebp - 0x58], 0x74
mov byte [ebp - 0x57], 7
mov byte [ebp - 0x56], 7
mov al, byte [ebp - 0x64]
mov byte [ebp - 0x55], bl
mov al, byte [ebp + edx - 0x64]
mov ecx, dword [ebp - 0x68]
xor cl, al
mov byte [ebp + edx - 0x64], cl
inc edx
cmp edx, 0xf
jb 0x408892
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [ebp - 0x64]
push eax
push 0x5198b0
mov byte [ebp - 0x55], bl
call esi
mov dword [ebp - 0x88], 0x5d
mov edx, ebx
mov byte [ebp - 0x84], 0x32
mov byte [ebp - 0x83], 0x5d
mov byte [ebp - 0x82], 0x28
mov byte [ebp - 0x81], 0x5d
mov byte [ebp - 0x80], 0x29
mov byte [ebp - 0x7f], 0x5d
mov byte [ebp - 0x7e], 0x7d
mov byte [ebp - 0x7d], 0x5d
mov byte [ebp - 0x7c], 0x32
mov byte [ebp - 0x7b], 0x5d
mov byte [ebp - 0x7a], 0x3b
mov byte [ebp - 0x79], 0x5d
mov byte [ebp - 0x78], 0x7d
mov byte [ebp - 0x77], 0x5d
mov byte [ebp - 0x76], 0x30
mov byte [ebp - 0x75], 0x5d
mov byte [ebp - 0x74], 0x38
mov byte [ebp - 0x73], 0x5d
mov byte [ebp - 0x72], 0x30
mov byte [ebp - 0x71], 0x5d
mov byte [ebp - 0x70], 0x32
mov byte [ebp - 0x6f], 0x5d
mov byte [ebp - 0x6e], 0x2f
mov byte [ebp - 0x6d], 0x5d
mov byte [ebp - 0x6c], 0x24
mov byte [ebp - 0x6b], 0x5d
mov byte [ebp - 0x6a], 0x5d
mov al, byte [ebp - 0x84]
mov byte [ebp - 0x69], bl
mov al, byte [ebp + edx - 0x84]
mov ecx, dword [ebp - 0x88]
xor cl, al
mov byte [ebp + edx - 0x84], cl
inc edx
cmp edx, 0x1b
jb 0x408946
lea eax, [ebp - 0x84]
mov byte [ebp - 0x69], bl
push eax
push 0x5198f0
call esi
push 0x2c
pop edi
mov dword [ebp - 0x18], edi
mov edx, ebx
mov eax, dword [ebp - 0x18]
xor al, 0x6e
mov byte [ebp - 0x14], al
mov eax, dword [ebp - 0x18]
inc al
mov byte [ebp - 0x13], al
mov eax, dword [ebp - 0x18]
add al, 2
xor al, 0x6f
mov byte [ebp - 0x12], al
mov eax, dword [ebp - 0x18]
add al, 3
mov byte [ebp - 0x11], al
mov eax, dword [ebp - 0x18]
add al, 4
xor al, 0x20
mov byte [ebp - 0x10], al
mov eax, dword [ebp - 0x18]
add al, 5
mov byte [ebp - 0xf], al
mov eax, dword [ebp - 0x18]
add al, 6
xor al, 0x61
mov byte [ebp - 0xe], al
mov eax, dword [ebp - 0x18]
add al, 7
mov byte [ebp - 0xd], al
mov eax, dword [ebp - 0x18]
add al, 8
xor al, 0x63
mov byte [ebp - 0xc], al
mov eax, dword [ebp - 0x18]
add al, 9
mov byte [ebp - 0xb], al
mov eax, dword [ebp - 0x18]
add al, 0xa
xor al, 0x63
mov byte [ebp - 0xa], al
mov eax, dword [ebp - 0x18]
add al, 0xb
mov byte [ebp - 9], al
mov eax, dword [ebp - 0x18]
add al, 0xc
xor al, 0x65
mov byte [ebp - 8], al
mov eax, dword [ebp - 0x18]
add al, 0xd
mov byte [ebp - 7], al
mov eax, dword [ebp - 0x18]
add al, 0xe
xor al, 0x73
mov byte [ebp - 6], al
mov eax, dword [ebp - 0x18]
add al, 0xf
mov byte [ebp - 5], al
mov eax, dword [ebp - 0x18]
add al, 0x10
xor al, 0x73
mov byte [ebp - 4], al
mov eax, dword [ebp - 0x18]
add al, 0x11
mov byte [ebp - 3], al
mov eax, dword [ebp - 0x18]
add al, 0x12
mov byte [ebp - 1], bl
mov byte [ebp - 2], al
mov al, byte [ebp - 0x14]
mov al, byte [ebp + edx - 0x14]
mov ecx, dword [ebp - 0x18]
add cl, dl
xor cl, al
mov byte [ebp + edx - 0x14], cl
inc edx
cmp edx, 0x13
jb 0x408a29
lea eax, [ebp - 0x14]
mov byte [ebp - 1], bl
push eax
push 0x519a48
call esi
mov dword [ebp - 0x30], 0x39
mov edx, ebx
mov eax, dword [ebp - 0x30]
xor al, 0x74
mov byte [ebp - 0x2c], al
mov eax, dword [ebp - 0x30]
inc al
mov byte [ebp - 0x2b], al
mov eax, dword [ebp - 0x30]
add al, 2
xor al, 0x6f
mov byte [ebp - 0x2a], al
mov eax, dword [ebp - 0x30]
add al, 3
mov byte [ebp - 0x29], al
mov eax, dword [ebp - 0x30]
add al, 4
xor al, 0x6f
mov byte [ebp - 0x28], al
mov eax, dword [ebp - 0x30]
add al, 5
mov byte [ebp - 0x27], al
mov eax, dword [ebp - 0x30]
add al, 6
xor al, 0x20
mov byte [ebp - 0x26], al
mov eax, dword [ebp - 0x30]
add al, 7
mov byte [ebp - 0x25], al
mov eax, dword [ebp - 0x30]
add al, 8
xor al, 0x73
mov byte [ebp - 0x24], al
mov eax, dword [ebp - 0x30]
add al, 9
mov byte [ebp - 0x23], al
mov eax, dword [ebp - 0x30]
add al, 0xa
xor al, 0x6d
mov byte [ebp - 0x22], al
mov eax, dword [ebp - 0x30]
add al, 0xb
mov byte [ebp - 0x21], al
mov eax, dword [ebp - 0x30]
add al, 0xc
xor al, 0x61
mov byte [ebp - 0x20], al
mov eax, dword [ebp - 0x30]
add al, 0xd
mov byte [ebp - 0x1f], al
mov eax, dword [ebp - 0x30]
add al, 0xe
xor al, 0x6c
mov byte [ebp - 0x1e], al
mov eax, dword [ebp - 0x30]
add al, 0xf
mov byte [ebp - 0x1d], al
mov eax, dword [ebp - 0x30]
add al, 0x10
xor al, 0x6c
mov byte [ebp - 0x1c], al
mov eax, dword [ebp - 0x30]
add al, 0x11
mov byte [ebp - 0x1b], al
mov eax, dword [ebp - 0x30]
add al, 0x12
mov byte [ebp - 0x19], bl
mov byte [ebp - 0x1a], al
mov al, byte [ebp - 0x2c]
mov al, byte [ebp + edx - 0x2c]
mov ecx, dword [ebp - 0x30]
add cl, dl
xor cl, al
mov byte [ebp + edx - 0x2c], cl
inc edx
cmp edx, 0x13
jb 0x408b03
lea eax, [ebp - 0x2c]
mov byte [ebp - 0x19], bl
push eax
push 0x519970
call esi
mov byte [ebp - 0x54], 0x6d
mov byte [ebp - 0x53], 0xc
mov byte [ebp - 0x52], 0x78
mov byte [ebp - 0x51], 0xc
mov byte [ebp - 0x50], 0x7e
mov byte [ebp - 0x4f], 0xc
mov byte [ebp - 0x4e], 0x71
mov byte [ebp - 0x4d], 0xc
mov byte [ebp - 0x4c], 0x6d
mov byte [ebp - 0x4b], 0xc
mov byte [ebp - 0x4a], 0x70
mov byte [ebp - 0x49], 0xc
mov byte [ebp - 0x48], 0x85
mov byte [ebp - 0x47], 0xc
mov byte [ebp - 0x46], 0xc
mov byte [ebp - 0x45], bl
mov al, byte [ebp - 0x54]
mov eax, ebx
sub byte [ebp + eax - 0x54], 0xc
inc eax
cmp eax, 0xf
jb 0x408b6a
lea eax, [ebp - 0x54]
push eax
push 0x519930
call esi
mov dword [ebp - 0x44], edi
mov edx, ebx
mov eax, dword [ebp - 0x44]
xor al, 0x63
mov byte [ebp - 0x40], al
mov eax, dword [ebp - 0x44]
inc al
mov byte [ebp - 0x3f], al
mov eax, dword [ebp - 0x44]
add al, 2
xor al, 0x6f
mov byte [ebp - 0x3e], al
mov eax, dword [ebp - 0x44]
add al, 3
mov byte [ebp - 0x3d], al
mov eax, dword [ebp - 0x44]
add al, 4
xor al, 0x72
mov byte [ebp - 0x3c], al
mov eax, dword [ebp - 0x44]
add al, 5
mov byte [ebp - 0x3b], al
mov eax, dword [ebp - 0x44]
add al, 6
xor al, 0x72
mov byte [ebp - 0x3a], al
mov eax, dword [ebp - 0x44]
add al, 7
mov byte [ebp - 0x39], al
mov eax, dword [ebp - 0x44]
add al, 8
xor al, 0x75
mov byte [ebp - 0x38], al
mov eax, dword [ebp - 0x44]
add al, 9
mov byte [ebp - 0x37], al
mov eax, dword [ebp - 0x44]
add al, 0xa
xor al, 0x70
mov byte [ebp - 0x36], al
mov eax, dword [ebp - 0x44]
add al, 0xb
mov byte [ebp - 0x35], al
mov eax, dword [ebp - 0x44]
add al, 0xc
xor al, 0x74
mov byte [ebp - 0x34], al
mov eax, dword [ebp - 0x44]
add al, 0xd
mov byte [ebp - 0x33], al
mov eax, dword [ebp - 0x44]
add al, 0xe
mov byte [ebp - 0x31], bl
mov byte [ebp - 0x32], al
mov al, byte [ebp - 0x40]
mov al, byte [ebp + edx - 0x40]
mov ecx, dword [ebp - 0x44]
add cl, dl
xor cl, al
mov byte [ebp + edx - 0x40], cl
inc edx
cmp edx, 0xf
jb 0x408c0f
lea eax, [ebp - 0x40]
mov byte [ebp - 0x31], bl
push eax
push 0x5199b8
call esi
pop edi
pop esi
pop ebx
leave
ret