Function at 0x4860b0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Get common file path
Initialize winsock library
Read .ini file
Resolve dns

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51a3f1
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x230
mov eax, dword [0x55b098]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x1e4], esi
lea eax, [esi + 0xc]
mov dword [ebp - 0x240], esi
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x14], 0xf
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x486126
mov eax, dword [eax]
mov byte [eax], 0
mov dword [ebp - 4], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
lea edi, [esi + 0x134]
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x14], 0xf
cmp dword [edi + 0x14], 0x10
mov dword [edi + 0x10], 0
jb 0x486171
mov eax, dword [edi]
jmp 0x486173
mov eax, edi
mov byte [eax], 0
lea eax, [esi + 0x14c]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x14], 0xf
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x4861a0
mov eax, dword [eax]
mov byte [eax], 0
lea eax, [esi + 0x164]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x14], 0xf
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x4861cd
mov eax, dword [eax]
mov byte [eax], 0
lea eax, [esi + 0x230]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x14], 0xf
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x4861fa
mov eax, dword [eax]
mov byte [eax], 0
lea eax, [esi + 0x250]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x14], 0xf
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x486227
mov eax, dword [eax]
mov byte [eax], 0
lea eax, [esi + 0x26c]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x14], 0xf
cmp dword [eax + 0x14], 0x10
mov dword [eax + 0x10], 0
jb 0x486254
mov eax, dword [eax]
mov byte [eax], 0
push 0x14
mov byte [ebp - 4], 7
call fcn.004d7d49
xorps xmm0, xmm0
mov dword [ebp - 0x1e4], eax
add esp, 4
mov dword [ebp - 0x204], 0x95ebe2ef
mov dword [ebp - 0x200], 0x80fce5a7
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
movaps xmm0, xmmword [0x551bc0]
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x10], 0
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [esi], eax
xor eax, eax
mov dword [esi + 4], 0
xor ecx, ecx
mov byte [esi + 0x249], 0
mov byte [esi + 0x284], 0
mov word [esi + 8], 0
mov word [esi + 0x268], ax
movups xmmword [ebp - 0x214], xmm0
mov dword [ebp - 0x1fc], 0x7de49c9d
mov byte [ebp - 0x1f8], al
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp - 0x214]
xor byte [ebp + ecx - 0x213], al
inc ecx
cmp ecx, 0x1b
jb 0x486300
cmp byte [ebp - 0x213], 0
mov byte [ebp - 0x1f8], 0
jne 0x486327
xor ecx, ecx
jmp 0x486339
lea ecx, [ebp - 0x213]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486330
sub ecx, edx
push ecx
lea eax, [ebp - 0x213]
push eax
lea ecx, [esi + 0x26c]
call fcn.004488b0
push 0x64
call fcn.004d7d8f
add esp, 4
mov dword [ebp - 0x218], eax
test eax, eax
je 0x48636f
push 0x64
push 0
push eax
call fcn.004f0ad0
add esp, 0xc
jmp 0x486379
mov dword [ebp - 0x218], 0
lea eax, [esi + 0x30]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
cmp byte [esi + 0x30], 0
lea edx, [esi + 0x30]
mov dword [ebp - 0x228], 0xf
mov dword [ebp - 0x22c], 0
mov byte [ebp - 0x23c], 0
jne 0x4863b0
xor ecx, ecx
jmp 0x4863cd
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x1e4], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4863c0
sub ecx, dword [ebp - 0x1e4]
push ecx
push edx
lea ecx, [ebp - 0x23c]
call fcn.004488b0
mov byte [ebp - 4], 8
mov dl, 0x2c
mov dword [ebp - 0x1e0], 0x497f702c
xor ecx, ecx
mov dword [ebp - 0x1dc], 0x5e495a5e
mov dword [ebp - 0x1d8], 0x45424502
mov byte [ebp - 0x1d4], 0
nop word [eax + eax]
lea eax, [ebp - 0x1df]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x486427
mov dl, byte [ebp - 0x1e0]
jmp 0x486410
lea eax, [ebp - 0x1df]
mov byte [ebp - 0x1d4], 0
push eax
lea edx, [ebp - 0x23c]
lea ecx, [ebp - 0x210]
call fcn.0044fa90
add esp, 4
mov dword [ebp - 0x1e4], eax
cmp dword [eax + 0x14], 0x10
jb 0x48645d
mov eax, dword [eax]
mov dword [ebp - 0x1e4], eax
push dword [ebp - 0x1e4]
mov al, 0x1f
mov byte [ebp - 0x224], 0x2e
mov byte [ebp - 0x1c1], al
mov cl, 0x1c
xor al, byte [ebp - 0x224]
mov ch, 0x1e
xor cl, byte [ebp - 0x224]
xor dh, dh
mov byte [ebp - 0x223], al
xor ah, ah
mov byte [ebp - 0x222], cl
mov dl, 0x19
mov cl, byte [ebp - 0x224]
mov byte [ebp - 0x1f1], ch
xor ah, cl
mov al, byte [ebp - 0x1f1]
xor dl, cl
xor al, cl
mov byte [ebp - 0x1c2], dh
mov byte [ebp - 0x21d], al
xor ch, cl
mov al, byte [ebp - 0x1c2]
xor dh, cl
xor al, cl
mov byte [ebp - 0x220], ah
mov byte [ebp - 0x21c], al
mov ah, 0x35
mov al, byte [ebp - 0x1c1]
xor al, cl
mov byte [ebp - 0x221], dl
mov byte [ebp - 0x21b], al
mov cl, 0x65
mov al, 0x7c
mov byte [ebp - 0x1ec], ah
xor al, ah
mov byte [ebp - 0x1d0], 0x63
mov byte [ebp - 0x1eb], al
xor cl, ah
mov dl, 5
mov byte [ebp - 0x1ea], cl
xor dl, ah
mov byte [ebp - 0x21f], ch
mov al, 0x30
mov byte [ebp - 0x1e9], dl
xor al, byte [ebp - 0x1d0]
mov cl, 6
mov byte [ebp - 0x1cf], al
mov dl, 0x11
mov al, byte [ebp - 0x1d0]
mov ah, 0x15
xor ah, al
mov byte [ebp - 0x21e], dh
push 0x64
push dword [ebp - 0x218]
mov ch, cl
mov byte [ebp - 0x1cc], ah
mov dh, dl
mov byte [ebp - 0x1e8], 0
xor cl, al
mov byte [ebp - 0x1c9], 0
xor dl, al
mov byte [ebp - 0x21a], 0
xor ch, al
mov byte [ebp - 0x1e8], 0
xor dh, al
mov byte [ebp - 0x1ce], cl
lea eax, [ebp - 0x223]
mov byte [ebp - 0x1cd], dl
push eax
lea eax, [ebp - 0x1eb]
mov byte [ebp - 0x1cb], ch
push eax
lea eax, [ebp - 0x1cf]
mov byte [ebp - 0x1ca], dh
push eax
mov byte [ebp - 0x1c9], 0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x1fc]
cmp eax, 0x10
jb 0x4865c7
inc eax
lea ecx, [ebp - 0x210]
push eax
push dword [ebp - 0x210]
call fcn.00448ce0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x1fc], 0xf
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x210], 0
cmp eax, 0x10
jb 0x486604
inc eax
lea ecx, [ebp - 0x23c]
push eax
push dword [ebp - 0x23c]
call fcn.00448ce0
cmp byte [esi + 0x30], 0
lea edx, [esi + 0x30]
mov dword [ebp - 0x228], 0xf
mov dword [ebp - 0x22c], 0
mov byte [ebp - 0x23c], 0
jne 0x48662c
xor ecx, ecx
jmp 0x486644
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x1e4], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486637
sub ecx, dword [ebp - 0x1e4]
push ecx
push edx
lea ecx, [ebp - 0x23c]
call fcn.004488b0
mov byte [ebp - 4], 9
mov dl, 0x40
mov dword [ebp - 0x1e0], 0x25131c40
xor ecx, ecx
mov dword [ebp - 0x1dc], 0x32253632
mov dword [ebp - 0x1d8], 0x292e296e
mov byte [ebp - 0x1d4], 0
nop
lea eax, [ebp - 0x1df]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x486697
mov dl, byte [ebp - 0x1e0]
jmp 0x486680
lea eax, [ebp - 0x1df]
mov byte [ebp - 0x1d4], 0
push eax
lea edx, [ebp - 0x23c]
lea ecx, [ebp - 0x210]
call fcn.0044fa90
add esp, 4
mov dword [ebp - 0x1e4], eax
cmp dword [eax + 0x14], 0x10
jb 0x4866cd
mov eax, dword [eax]
mov dword [ebp - 0x1e4], eax
push dword [ebp - 0x1e4]
mov dh, 0x12
mov byte [ebp - 0x1d0], 0x19
mov al, 0x54
mov byte [ebp - 0x1f0], dh
xor al, dh
mov byte [ebp - 0x1c1], 0x77
mov byte [ebp - 0x1ef], al
mov cl, 0x7b
xor cl, dh
mov byte [ebp - 0x1ea], 0
mov dl, 0x7e
mov byte [ebp - 0x1ee], cl
xor dl, dh
mov byte [ebp - 0x1c8], 0
mov ah, 0x77
mov byte [ebp - 0x1ed], dl
xor ah, dh
mov byte [ebp - 0x1ea], 0
mov ch, 0x61
mov byte [ebp - 0x1ec], ah
xor ch, dh
mov byte [ebp - 0x1c8], 0
mov al, 0x4f
mov byte [ebp - 0x1eb], ch
xor al, byte [ebp - 0x1d0]
mov cl, 0x7c
mov byte [ebp - 0x1cf], al
mov dl, 0x6b
mov al, byte [ebp - 0x1d0]
mov ah, 0x6a
xor cl, al
xor dl, al
xor ah, al
mov byte [ebp - 0x1ce], cl
mov ch, 0x70
mov byte [ebp - 0x1cc], ah
xor ch, al
mov byte [ebp - 0x1cd], dl
mov dh, 0x76
mov byte [ebp - 0x1cb], ch
xor dh, al
mov al, byte [ebp - 0x1c1]
xor al, byte [ebp - 0x1d0]
mov byte [ebp - 0x1c9], al
lea eax, [ebp - 0x1ef]
push 1
push eax
lea eax, [ebp - 0x1cf]
mov byte [ebp - 0x1ca], dh
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [esi + 0x26a], ax
mov eax, dword [ebp - 0x1fc]
cmp eax, 0x10
jb 0x4867ca
inc eax
lea ecx, [ebp - 0x210]
push eax
push dword [ebp - 0x210]
call fcn.00448ce0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x1fc], 0xf
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x210], 0
cmp eax, 0x10
jb 0x486807
inc eax
lea ecx, [ebp - 0x23c]
push eax
push dword [ebp - 0x23c]
call fcn.00448ce0
lea eax, [ebp - 0x1c0]
push eax
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x486833
push eax
push ecx
call fcn.0044fb10
add esp, 4
mov ecx, eax
call fcn.0044bfc0
jmp 0x486fff
push 0
push 0x550739
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.004488b0
push dword [ebp - 0x218]
mov byte [ebp - 4], 0xa
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0x218], eax
mov ecx, dword [eax + 0xc]
cmp dword [ecx], 0
je 0x4868c4
xor edi, edi
mov eax, dword [edi + ecx]
lea edi, [edi + 4]
push dword [eax]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
mov edx, eax
cmp byte [edx], 0
jne 0x48688d
xor ecx, ecx
jmp 0x4868a5
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x1e4], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486898
sub ecx, dword [ebp - 0x1e4]
push ecx
push edx
lea ecx, [ebp - 0x2c]
call fcn.004488b0
mov eax, dword [ebp - 0x218]
mov ecx, dword [eax + 0xc]
cmp dword [edi + ecx], 0
jne 0x486874
lea edi, [esi + 0x134]
lea eax, [ebp - 0x2c]
cmp edi, eax
je 0x4868d7
push 0xffffffffffffffff
push 0
push eax
mov ecx, edi
call fcn.004489b0
mov dword [esi + 0x24c], 0
cmp dword [edi + 0x14], 0x10
jb 0x4868e9
mov edi, dword [edi]
sub esp, 0x18
mov edx, esp
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov dword [edx + 0x14], 0xf
cmp dword [edx + 0x14], 0x10
mov dword [edx + 0x10], 0
jb 0x486914
mov eax, dword [edx]
jmp 0x486916
mov eax, edx
mov byte [eax], 0
cmp byte [edi], 0
jne 0x486922
xor ecx, ecx
jmp 0x48693d
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0x1e4], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486930
sub ecx, dword [ebp - 0x1e4]
push ecx
push edi
mov ecx, edx
call fcn.004488b0
lea ecx, [esi + 0x24c]
call fcn.00485f20
add esp, 0x18
lea ecx, [esi + 0x14c]
push 0
push 0x550739
call fcn.004488b0
push 0
push 0x550739
lea ecx, [esi + 0x164]
call fcn.004488b0
push 0
push 0x550739
lea ecx, [esi + 0x230]
call fcn.004488b0
lea edx, [esi + 0x30]
mov byte [esi + 0x17c], 0
mov byte [esi + 0x248], 0
cmp byte [edx], 0
mov dword [ebp - 0x228], 0xf
mov dword [ebp - 0x22c], 0
mov byte [ebp - 0x23c], 0
jne 0x4869bf
xor ecx, ecx
jmp 0x4869cd
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4869c4
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x23c]
call fcn.004488b0
mov byte [ebp - 4], 0xb
mov dl, 0x4a
mov dword [ebp - 0x1e0], 0x3a05164a
xor ecx, ecx
mov dword [ebp - 0x1dc], 0x2425233e
mov dword [ebp - 0x1d8], 0x23242364
mov byte [ebp - 0x1d4], 0
nop word [eax + eax]
lea eax, [ebp - 0x1df]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x486a27
mov dl, byte [ebp - 0x1e0]
jmp 0x486a10
lea eax, [ebp - 0x1df]
mov byte [ebp - 0x1d4], 0
push eax
lea edx, [ebp - 0x23c]
lea ecx, [ebp - 0x210]
call fcn.0044fa90
mov edi, eax
add esp, 4
cmp dword [edi + 0x14], 0x10
jb 0x486a53
mov edi, dword [edi]
mov cl, 0x27
mov byte [ebp - 0x1d0], 0x42
mov ah, cl
mov byte [ebp - 0x1c2], 0x30
xor cl, byte [ebp - 0x1d0]
mov al, 0x10
xor al, byte [ebp - 0x1d0]
mov dl, 0x2f
mov byte [ebp - 0x1cf], al
mov ch, dl
mov byte [ebp - 0x1c1], ah
mov dh, 0x20
mov al, byte [ebp - 0x1c1]
mov byte [ebp - 0x1ce], cl
mov cl, byte [ebp - 0x1d0]
xor al, cl
mov byte [ebp - 0x1f0], 0x35
mov byte [ebp - 0x1c9], al
xor ah, cl
mov al, byte [ebp - 0x1c2]
xor dl, cl
xor al, cl
mov byte [ebp - 0x1c1], 0x50
mov byte [ebp - 0x1c8], al
xor ch, cl
xor dh, cl
mov byte [ebp - 0x1cc], ah
mov al, 0x79
mov byte [ebp - 0x1c2], 0x47
xor al, byte [ebp - 0x1f0]
mov cl, 0x54
xor cl, byte [ebp - 0x1f0]
mov ah, 0x5b
mov byte [ebp - 0x1ef], al
mov al, byte [ebp - 0x1c1]
mov byte [ebp - 0x1ee], cl
mov cl, byte [ebp - 0x1f0]
xor al, cl
mov byte [ebp - 0x1cd], dl
mov byte [ebp - 0x1e9], al
xor ah, cl
mov al, byte [ebp - 0x1c2]
mov dl, 0x40
xor al, cl
mov byte [ebp - 0x1ec], ah
push edi
mov byte [ebp - 0x1e8], al
xor dl, cl
push 0
mov byte [ebp - 0x1cb], ch
lea eax, [ebp - 0x1cf]
mov byte [ebp - 0x1ca], dh
mov ch, 0x56
push eax
mov dh, 0x5d
mov byte [ebp - 0x1c7], 0
lea eax, [ebp - 0x1ef]
mov byte [ebp - 0x1e7], 0
xor ch, cl
mov byte [ebp - 0x1c7], 0
xor dh, cl
mov byte [ebp - 0x1ed], dl
push eax
mov byte [ebp - 0x1eb], ch
mov byte [ebp - 0x1ea], dh
mov byte [ebp - 0x1e7], 0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
setne al
mov byte [esi + 0x17d], al
mov eax, dword [ebp - 0x1fc]
cmp eax, 0x10
jb 0x486ba4
inc eax
lea ecx, [ebp - 0x210]
push eax
push dword [ebp - 0x210]
call fcn.00448ce0
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x1fc], 0xf
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x210], 0
cmp eax, 0x10
jb 0x486be1
inc eax
lea ecx, [ebp - 0x23c]
push eax
push dword [ebp - 0x23c]
call fcn.00448ce0
cmp byte [esi + 0x17d], 0
je 0x486fea
lea eax, [esi + 0x30]
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044b480
mov edi, eax
mov byte [ebp - 4], 0xc
mov dl, 0x50
mov dword [ebp - 0x1e0], 0x201f0c50
xor ecx, ecx
mov dword [ebp - 0x1dc], 0x3e3f3924
mov dword [ebp - 0x1d8], 0x393e397e
mov byte [ebp - 0x1d4], 0
nop dword [eax]
lea eax, [ebp - 0x1df]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x486c47
mov dl, byte [ebp - 0x1e0]
jmp 0x486c30
lea eax, [ebp - 0x1df]
mov byte [ebp - 0x1d4], 0
push eax
mov edx, edi
lea ecx, [ebp - 0x210]
call fcn.0044fa90
mov edi, eax
add esp, 4
cmp dword [edi + 0x14], 0x10
jb 0x486c6f
mov edi, dword [edi]
mov ah, 0x50
mov byte [ebp - 0x1d0], 0x63
mov al, 5
mov byte [ebp - 0x1ec], ah
xor al, ah
mov byte [ebp - 0x1c1], 6
mov byte [ebp - 0x1eb], al
mov cl, 0x19
xor cl, ah
mov byte [ebp - 0x1c2], 0x11
mov byte [ebp - 0x1ea], cl
mov al, 0x2f
xor al, byte [ebp - 0x1d0]
mov cl, 2
xor cl, byte [ebp - 0x1d0]
mov dl, 0x14
mov byte [ebp - 0x1cf], al
xor dl, ah
mov al, byte [ebp - 0x1c1]
mov ah, 0xd
mov byte [ebp - 0x1ce], cl
xor ch, ch
mov cl, byte [ebp - 0x1d0]
mov dh, 0xb
xor al, cl
mov byte [ebp - 0x1e9], dl
mov byte [ebp - 0x1c9], al
xor ah, cl
mov al, byte [ebp - 0x1c2]
mov dl, 0x16
xor al, cl
mov byte [ebp - 0x1cc], ah
push edi
mov byte [ebp - 0x1c8], al
xor dl, cl
push 0x19
lea eax, [esi + 0x17e]
mov byte [ebp - 0x1e8], 0
push eax
push 0x550739
lea eax, [ebp - 0x1eb]
mov byte [ebp - 0x1e8], 0
push eax
lea eax, [ebp - 0x1cf]
mov byte [ebp - 0x1cd], dl
xor ch, cl
mov byte [ebp - 0x1c7], 0
xor dh, cl
mov byte [ebp - 0x1cb], ch
push eax
mov byte [ebp - 0x1ca], dh
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x1fc]
cmp eax, 0x10
jb 0x486d66
inc eax
lea ecx, [ebp - 0x210]
push eax
push dword [ebp - 0x210]
call fcn.00448ce0
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x1fc], 0xf
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x210], 0
cmp eax, 0x10
jb 0x486da3
inc eax
lea ecx, [ebp - 0x23c]
push eax
push dword [ebp - 0x23c]
call fcn.00448ce0
lea eax, [esi + 0x30]
push eax
lea ecx, [ebp - 0x23c]
call fcn.0044b480
mov edi, eax
mov byte [ebp - 4], 0xd
mov dl, 0x31
mov dword [ebp - 0x1e0], 0x417e6d31
xor ecx, ecx
mov dword [ebp - 0x1dc], 0x5f5e5845
mov dword [ebp - 0x1d8], 0x585f581f
mov byte [ebp - 0x1d4], 0
lea eax, [ebp - 0x1df]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x486df8
mov dl, byte [ebp - 0x1e0]
jmp 0x486de1
lea eax, [ebp - 0x1df]
mov byte [ebp - 0x1d4], 0
push eax
mov edx, edi
lea ecx, [ebp - 0x210]
call fcn.0044fa90
add esp, 4
mov dword [ebp - 0x1e4], eax
cmp dword [eax + 0x14], 0x10
jb 0x486e2a
mov eax, dword [eax]
mov dword [ebp - 0x1e4], eax
push dword [ebp - 0x1e4]
mov ah, 0x2f
mov byte [ebp - 0x1d0], 0x41
mov al, 0x7a
mov byte [ebp - 0x1c1], 0x24
xor al, ah
mov byte [ebp - 0x1ec], ah
mov byte [ebp - 0x1eb], al
lea edi, [esi + 0x193]
mov cl, 0x7f
mov byte [ebp - 0x1c2], 0x33
xor cl, ah
mov byte [ebp - 0x1e8], 0
mov byte [ebp - 0x1ea], cl
mov al, 0xd
xor al, byte [ebp - 0x1d0]
mov cl, 0x20
xor cl, byte [ebp - 0x1d0]
mov dl, 0x78
mov byte [ebp - 0x1cf], al
xor dl, ah
mov al, byte [ebp - 0x1c1]
mov ch, 0x22
mov byte [ebp - 0x1ce], cl
mov dh, 0x29
mov cl, byte [ebp - 0x1d0]
xor al, cl
mov byte [ebp - 0x1e9], dl
mov byte [ebp - 0x1c9], al
xor ah, cl
mov al, byte [ebp - 0x1c2]
mov dl, 0x34
push 0x19
xor al, cl
mov byte [ebp - 0x1cc], ah
push edi
mov byte [ebp - 0x1c8], al
xor dl, cl
push 0x550739
lea eax, [ebp - 0x1eb]
mov byte [ebp - 0x1c7], 0
push eax
lea eax, [ebp - 0x1cf]
mov byte [ebp - 0x1e8], 0
xor ch, cl
mov byte [ebp - 0x1cd], dl
xor dh, cl
mov byte [ebp - 0x1cb], ch
push eax
mov byte [ebp - 0x1ca], dh
mov byte [ebp - 0x1c7], 0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x1fc]
cmp eax, 0x10
jb 0x486f2b
inc eax
lea ecx, [ebp - 0x210]
push eax
push dword [ebp - 0x210]
call fcn.00448ce0
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x228]
mov dword [ebp - 0x1fc], 0xf
mov dword [ebp - 0x200], 0
mov byte [ebp - 0x210], 0
cmp eax, 0x10
jb 0x486f68
inc eax
lea ecx, [ebp - 0x23c]
push eax
push dword [ebp - 0x23c]
call fcn.00448ce0
cmp byte [esi + 0x17e], 0
lea edx, [esi + 0x17e]
jne 0x486f7b
xor ecx, ecx
jmp 0x486f93
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x1e4], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486f86
sub ecx, dword [ebp - 0x1e4]
push ecx
push edx
lea ecx, [esi + 0x14c]
call fcn.004488b0
cmp byte [edi], 0
jne 0x486fa9
xor ecx, ecx
jmp 0x486fb9
mov ecx, edi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486fb0
sub ecx, edx
push ecx
push edi
lea ecx, [esi + 0x164]
call fcn.004488b0
cmp byte [edi], 0
jne 0x486fcf
xor ecx, ecx
jmp 0x486fdd
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x486fd4
sub ecx, edx
push ecx
push edi
lea ecx, [esi + 0x230]
call fcn.004488b0
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x486fff
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00448ce0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004d7d33
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret