Function at 0x1002bb90
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008804c
mov eax, dword fs:[0]
push eax
sub esp, 0x180
mov eax, dword [0x100a7078]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov edi, dword [ebp + 8]
mov eax, dword [esi + 0x30]
mov dword [0x100aa9d8], eax
test edi, edi
je 0x1002cf17
mov eax, dword [ebp + 0xc]
cmp eax, 1
je 0x1002bbea
cmp eax, 4
je 0x1002bbea
cmp eax, 0x100
jne 0x1002cf17
push 0x104
lea eax, [ebp - 0x114]
push 0
push eax
call fcn.1006a300
add esp, 0xc
mov dword [ebp - 0x134], 0xf
mov dword [ebp - 4], 0
mov eax, 0x100aad08
cmp dword [0x100aad1c], 0x10
mov dword [ebp - 0x138], 0
cmovae eax, dword [0x100aad08]
push eax
lea eax, [ebp - 0x114]
mov byte [ebp - 0x148], 0
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov byte [ebp - 0x16c], 0x7c
mov al, 0x33
xor al, byte [ebp - 0x16c]
mov cl, 0xc
xor cl, byte [ebp - 0x16c]
mov dh, 0x12
mov byte [ebp - 0x16b], al
mov ah, 0x15
mov byte [ebp - 0x16a], cl
mov dl, 8
mov cl, byte [ebp - 0x16c]
mov ch, 0x13
mov byte [ebp - 0x14c], 0x52
xor dl, cl
mov al, byte [ebp - 0x14c]
xor ch, cl
xor al, cl
mov byte [ebp - 0x14b], 0x35
mov byte [ebp - 0x165], al
mov al, byte [ebp - 0x14b]
xor al, cl
mov byte [ebp - 0x14a], dh
mov byte [ebp - 0x164], al
xor dh, cl
mov al, byte [ebp - 0x14a]
xor al, cl
mov byte [ebp - 0x149], ah
mov byte [ebp - 0x163], al
xor ah, cl
mov al, byte [ebp - 0x149]
xor al, cl
mov byte [ebp - 0x168], ah
mov byte [ebp - 0x162], al
lea eax, [ebp - 0x16b]
push eax
lea eax, [ebp - 0x114]
mov byte [ebp - 0x161], 0
push eax
mov byte [ebp - 0x169], dl
mov byte [ebp - 0x167], ch
mov byte [ebp - 0x166], dh
mov byte [ebp - 0x161], 0
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [esi]
test eax, eax
je 0x1002be41
cmp edi, eax
jne 0x1002be41
xor edx, edx
lea ecx, [ebp - 0x18c]
cmp dword [0x100aad7c], 1
setne dl
cmp edx, 1
mov dword [0x100aad7c], edx
sete byte [0x100aa8c7]
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002bd4b
mov esi, dword [esi]
mov byte [ebp - 0x16c], 0x19
mov al, 0x4a
xor al, byte [ebp - 0x16c]
mov cl, 0x72
xor cl, byte [ebp - 0x16c]
mov ah, 0x75
mov byte [ebp - 0x16b], al
mov ch, ah
mov byte [ebp - 0x16a], cl
mov dl, 0x70
mov cl, byte [ebp - 0x16c]
mov dh, 0x58
mov byte [ebp - 0x149], 0x6b
xor dl, cl
mov al, byte [ebp - 0x149]
xor ah, cl
xor al, cl
mov byte [ebp - 0x14a], 0x7c
mov byte [ebp - 0x165], al
xor ch, cl
mov al, byte [ebp - 0x14a]
xor dh, cl
xor al, cl
mov byte [ebp - 0x14b], 0x78
mov byte [ebp - 0x164], al
mov al, byte [ebp - 0x14b]
xor al, cl
mov byte [ebp - 0x162], 0
mov byte [ebp - 0x169], dl
mov cl, 0x50
mov byte [ebp - 0x168], ah
mov dl, 0x4a
mov byte [ebp - 0x167], ch
mov ah, 0x5a
mov byte [ebp - 0x163], al
mov ch, 0x39
mov byte [ebp - 0x162], 0
mov al, 0x74
mov byte [ebp - 0x166], dh
xor al, ch
mov byte [ebp - 0x14f], 0
xor cl, ch
mov byte [ebp - 0x153], al
xor dl, ch
mov byte [ebp - 0x154], ch
xor ah, ch
mov byte [ebp - 0x152], cl
mov byte [ebp - 0x150], ah
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x16b]
mov byte [ebp - 0x151], dl
push esi
push eax
mov byte [ebp - 0x14f], 0
lea eax, [ebp - 0x153]
jmp 0x1002cee3
mov eax, dword [esi + 4]
test eax, eax
je 0x1002bf24
cmp edi, eax
jne 0x1002bf24
xor edx, edx
lea ecx, [ebp - 0x18c]
cmp dword [0x100aad80], 1
setne dl
mov dword [0x100aad80], edx
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002be7b
mov esi, dword [esi]
mov cl, 0x4b
mov dword [ebp - 0x170], 0x252a194b
mov dword [ebp - 0x16c], 0x2c252220
xor eax, eax
mov dword [ebp - 0x168], 0x2e2d2d0e
mov word [ebp - 0x164], 0x3f28
mov byte [ebp - 0x162], 0
nop dword [eax]
xor byte [ebp + eax - 0x16f], cl
inc eax
cmp eax, 0xd
jae 0x1002bec5
mov cl, byte [ebp - 0x170]
jmp 0x1002beb0
mov ch, 0x58
mov byte [ebp - 0x14f], 0
mov al, 0x15
mov byte [ebp - 0x162], 0
xor al, ch
mov byte [ebp - 0x154], ch
mov cl, 0x31
mov byte [ebp - 0x153], al
mov dl, 0x2b
mov byte [ebp - 0x14f], 0
mov ah, 0x3b
xor cl, ch
xor dl, ch
mov byte [ebp - 0x152], cl
xor ah, ch
mov byte [ebp - 0x151], dl
mov byte [ebp - 0x150], ah
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x16f]
push esi
push eax
lea eax, [ebp - 0x153]
jmp 0x1002cee3
mov eax, dword [esi + 8]
test eax, eax
je 0x1002c159
cmp edi, eax
jne 0x1002c159
xor edx, edx
lea ecx, [ebp - 0x18c]
cmp dword [0x100aad78], 1
setne dl
mov dword [0x100aad78], edx
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002bf5e
mov esi, dword [esi]
mov byte [ebp - 0x168], 0x2c
mov al, 0x6e
xor al, byte [ebp - 0x168]
mov cl, 0x40
mov byte [ebp - 0x167], al
mov dl, 0x43
mov al, byte [ebp - 0x168]
mov ah, 0x4f
xor cl, al
mov byte [ebp - 0x149], 0x7c
xor dl, al
mov byte [ebp - 0x166], cl
xor ah, al
mov byte [ebp - 0x165], dl
mov ch, 0x47
mov byte [ebp - 0x164], ah
xor ch, al
mov byte [ebp - 0x160], 0
mov dh, 0x78
mov byte [ebp - 0x163], ch
xor dh, al
mov byte [ebp - 0x14f], 0
mov al, byte [ebp - 0x149]
mov ch, 0x62
xor al, byte [ebp - 0x168]
mov ah, 1
mov byte [ebp - 0x161], al
xor ah, ch
mov al, 0x2f
mov byte [ebp - 0x150], ah
xor al, ch
mov byte [ebp - 0x162], dh
mov byte [ebp - 0x153], al
mov cl, 0xb
lea eax, [ebp - 0x114]
mov byte [ebp - 0x160], 0
push eax
push esi
lea eax, [ebp - 0x167]
mov byte [ebp - 0x154], ch
push eax
mov dl, 0x11
mov byte [ebp - 0x14f], 0
lea eax, [ebp - 0x153]
xor cl, ch
xor dl, ch
mov byte [ebp - 0x152], cl
push eax
mov byte [ebp - 0x151], dl
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x18c]
call fcn.10002220
xorps xmm0, xmm0
mov dword [ebp - 0x118], 0
movups xmmword [ebp - 0x130], xmm0
mov byte [ebp - 0x149], 0xa1
movq qword [ebp - 0x120], xmm0
mov dword [ebp - method.ByteBuffer.virtual_0], vtable.ByteBuffer.0
mov byte [ebp - 0x12c], 1
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0
push 0x1000
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 1
call fcn.1000f360
mov byte [ebp - 4], 2
mov esi, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x120]
sub esi, edx
mov dword [ebp - method.ByteBuffer.virtual_0], vtable.Packet.0
cmp esi, 0x989680
ja 0x1002c109
mov eax, dword [ebp - 0x124]
lea ecx, [eax + 1]
cmp esi, ecx
jae 0x1002c0fa
push ecx
lea ecx, [ebp - 0x120]
call fcn.1000f2a0
mov edx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x124]
mov cl, byte [ebp - 0x149]
mov byte [eax + edx], cl
inc dword [ebp - 0x124]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x130]
movzx eax, byte [0x100aad78]
push eax
push 0xab
call fcn.1001e9d0
mov ecx, eax
call fcn.1001e9d0
mov edx, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x120]
sub edx, ecx
call fcn.10019520
lea ecx, [ebp - 0x120]
mov dword [ebp - method.ByteBuffer.virtual_0], vtable.ByteBuffer.0
call fcn.1000f460
jmp 0x1002cef5
mov ecx, dword [esi + 0x40]
test ecx, ecx
je 0x1002c23b
cmp edi, ecx
jne 0x1002c23b
call fcn.10019020
mov edi, eax
cmp edi, 0xa
ja 0x1002cef5
cmp edi, dword [0x100aad88]
je 0x1002cef5
mov dword [0x100aad88], edi
mov edx, edi
mov ecx, dword [esi + 0x40]
call fcn.10018fe0
mov ecx, dword [esi + 0x44]
mov edx, edi
call fcn.100191b0
movd xmm0, dword [0x100aad88]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x1009d9cc]
movss dword [0x100a79d4], xmm0
call fcn.1002aa50
mov edx, dword [0x100aad88]
lea ecx, [ebp - 0x18c]
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c1dd
mov esi, dword [esi]
mov cl, 0xb
mov dword [ebp - 0x16c], 0x666a480b
mov dword [ebp - 0x168], 0x596a796e
xor eax, eax
mov dword [ebp - 0x164], 0x6e6c656a
mov byte [ebp - 0x160], 0
nop word [eax + eax]
xor byte [ebp + eax - 0x16b], cl
inc eax
cmp eax, 0xb
jae 0x1002c225
mov cl, byte [ebp - 0x16c]
jmp 0x1002c210
mov byte [ebp - 0x160], 0
mov ch, 0x7a
mov al, 0x37
mov cl, 0x13
mov dl, 9
mov ah, 0x19
jmp 0x1002bdf3
mov ecx, dword [esi + 0x34]
test ecx, ecx
je 0x1002c35c
cmp edi, ecx
jne 0x1002c35c
call fcn.10019020
cmp eax, 0x1388
ja 0x1002cef5
cmp eax, dword [0x100aad68]
je 0x1002cef5
mov dword [0x100aad68], eax
mov edx, eax
mov ecx, dword [esi + 0x34]
call fcn.10018fe0
mov ecx, dword [0x100aad68]
call fcn.1002aa10
mov edx, dword [0x100aad68]
lea ecx, [ebp - 0x18c]
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c29f
mov esi, dword [esi]
mov dh, 0x1d
mov byte [ebp - 0x168], 0xc
mov al, 0x5e
mov byte [ebp - 0x154], dh
xor al, dh
mov byte [ebp - 0x14e], 0
mov byte [ebp - 0x153], al
mov cl, 0x72
xor cl, dh
mov byte [ebp - 0x161], 0
mov ah, 0x73
mov byte [ebp - 0x152], cl
xor ah, dh
mov byte [ebp - 0x14e], 0
mov al, 0x49
mov byte [ebp - 0x150], ah
xor al, byte [ebp - 0x168]
mov dl, 0x68
xor dl, dh
mov byte [ebp - 0x167], al
mov al, byte [ebp - 0x168]
mov ch, 0x69
xor ch, dh
mov byte [ebp - 0x151], dl
mov cl, 0x6a
mov byte [ebp - 0x14f], ch
mov ah, 0x69
mov byte [ebp - 0x161], 0
xor ah, al
mov dl, cl
xor cl, al
mov byte [ebp - 0x164], ah
xor dl, al
mov byte [ebp - 0x166], cl
mov ch, 0x6f
mov byte [ebp - 0x165], dl
xor ch, al
mov dh, 0x78
xor dh, al
mov byte [ebp - 0x163], ch
lea eax, [ebp - 0x114]
mov byte [ebp - 0x162], dh
push eax
lea eax, [ebp - 0x153]
push esi
push eax
lea eax, [ebp - 0x167]
jmp 0x1002cee3
mov ecx, dword [esi + 0x38]
test ecx, ecx
je 0x1002c511
cmp edi, ecx
jne 0x1002c511
call fcn.10019020
mov edi, eax
cmp edi, 0x17
ja 0x1002cef5
cmp edi, dword [0x100aad84]
je 0x1002cef5
mov dword [0x100aad84], edi
mov edx, edi
mov ecx, dword [esi + 0x38]
call fcn.10018fe0
xor ecx, ecx
push edi
cmp edi, 0xa
jge 0x1002c3dd
movaps xmm0, xmmword [0x1009ddc0]
movups xmmword [ebp - 0x174], xmm0
mov dword [ebp - 0x164], 0x52525806
mov byte [ebp - 0x160], cl
mov al, byte [ebp - 0x174]
xor byte [ebp + ecx - 0x173], al
inc ecx
cmp ecx, 0x13
jb 0x1002c3c1
mov byte [ebp - 0x160], 0
jmp 0x1002c41a
movaps xmm0, xmmword [0x1009e5e0]
movups xmmword [ebp - 0x174], xmm0
mov dword [ebp - 0x164], 0x5050f
nop word [eax + eax]
mov al, byte [ebp - 0x174]
xor byte [ebp + ecx - 0x173], al
inc ecx
cmp ecx, 0x12
jb 0x1002c400
mov byte [ebp - 0x161], 0
sub esp, 0x18
lea eax, [ebp - 0x173]
mov ecx, esp
push eax
call fcn.10002870
lea eax, [ebp - 0x18c]
push eax
call fcn.1000d830
add esp, 0x20
lea ecx, [ebp - 0x148]
push eax
call fcn.10003ae0
lea ecx, [ebp - 0x18c]
call fcn.10002220
mov ecx, dword [esi + 0x3c]
lea edx, [ebp - 0x148]
call fcn.10019110
push ecx
push edi
call fcn.1002de70
mov edx, dword [0x100aad84]
lea ecx, [ebp - 0x18c]
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c481
mov esi, dword [esi]
mov byte [ebp - 0x16c], 0x33
mov al, 0x74
xor al, byte [ebp - 0x16c]
mov cl, 0x52
xor cl, byte [ebp - 0x16c]
mov dl, 0x5e
mov byte [ebp - 0x16b], al
mov ah, 0x56
mov byte [ebp - 0x149], dl
mov ch, 0x67
mov al, byte [ebp - 0x149]
mov dh, 0x5a
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], ah
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ah, cl
xor ch, cl
mov byte [ebp - 0x163], 0
xor dh, cl
mov byte [ebp - 0x169], dl
xor al, cl
mov byte [ebp - 0x168], ah
mov byte [ebp - 0x167], ch
mov cl, 2
mov byte [ebp - 0x164], al
mov ch, 0x6b
mov byte [ebp - 0x163], 0
mov al, 0x26
mov dl, 0x18
mov ah, 8
jmp 0x1002bded
mov eax, dword [esi + 0xc]
test eax, eax
je 0x1002c628
cmp edi, eax
jne 0x1002c628
cmp byte [0x100aad90], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad90], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c54b
mov esi, dword [esi]
mov cl, 0x24
mov byte [ebp - 0x16c], 0x4b
mov byte [ebp - 0x14b], cl
mov dl, cl
xor cl, byte [ebp - 0x16c]
mov al, 7
xor al, byte [ebp - 0x16c]
mov ah, 0x3f
mov byte [ebp - 0x16b], al
mov ch, 0x1c
mov byte [ebp - 0x149], 0x2a
mov dh, 0x2e
mov al, byte [ebp - 0x149]
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], 0x3b
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ah, cl
xor al, cl
mov byte [ebp - 0x14c], 0x25
mov byte [ebp - 0x164], al
xor ch, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x169], dl
mov byte [ebp - 0x163], al
mov dl, 0x3c
mov al, byte [ebp - 0x14c]
xor al, cl
mov byte [ebp - 0x161], 0
mov byte [ebp - 0x168], ah
mov cl, 0x2d
mov byte [ebp - 0x167], ch
mov ah, 4
mov byte [ebp - 0x162], al
mov ch, 0x27
mov byte [ebp - 0x161], 0
mov al, 0x18
mov byte [ebp - 0x15c], 0x48
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x21
mov byte [ebp - 0x14b], 0x26
mov byte [ebp - 0x14c], 0x2f
jmp 0x1002ce42
mov eax, dword [esi + 0x10]
test eax, eax
je 0x1002c722
cmp edi, eax
jne 0x1002c722
cmp byte [0x100aad91], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad91], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c662
mov esi, dword [esi]
mov cl, 0x69
mov byte [ebp - 0x16c], 6
mov byte [ebp - 0x14a], cl
mov dl, cl
xor cl, byte [ebp - 0x16c]
mov al, 0x4a
xor al, byte [ebp - 0x16c]
mov dh, 0x74
mov byte [ebp - 0x16b], al
mov ah, 0x72
mov byte [ebp - 0x149], 0x6b
mov ch, 0x47
mov al, byte [ebp - 0x149]
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14b], dh
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ah, cl
xor al, cl
mov byte [ebp - 0x169], dl
mov byte [ebp - 0x164], al
xor ch, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x168], ah
mov dl, 0x73
mov byte [ebp - 0x167], ch
mov byte [ebp - 0x163], al
mov cl, 0x62
mov byte [ebp - 0x162], 0
mov al, 0x57
mov byte [ebp - 0x15c], 7
mov ah, 0x4b
mov ch, 0x68
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x6e
mov byte [ebp - 0x14b], 0x69
mov byte [ebp - 0x14c], 0x60
jmp 0x1002ce3b
mov eax, dword [esi + 0x14]
test eax, eax
je 0x1002c878
cmp edi, eax
jne 0x1002c878
cmp byte [0x100aad92], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad92], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c75c
mov esi, dword [esi]
mov cl, 0x5d
mov dword [ebp - 0x15c], 0x3232115d
mov dword [ebp - 0x158], 0x3e3e1c29
xor eax, eax
mov dword [ebp - 0x154], 0x322e2e38
mov word [ebp - 0x150], 0x242f
mov byte [ebp - 0x14e], 0
nop
xor byte [ebp + eax - 0x15b], cl
inc eax
cmp eax, 0xd
jae 0x1002c7a5
mov cl, byte [ebp - 0x15c]
jmp 0x1002c790
mov dl, 0x35
mov byte [ebp - 0x14e], 0
mov byte [ebp - 0x16c], 0x41
mov al, 0x11
mov cl, 0x24
mov byte [ebp - 0x149], dl
mov ah, 0xd
mov byte [ebp - 0x14a], 0x28
mov ch, 0x2e
mov byte [ebp - 0x14b], 0x2f
mov byte [ebp - 0x14c], 0x26
xor al, byte [ebp - 0x16c]
mov dh, ch
xor cl, byte [ebp - 0x16c]
mov byte [ebp - 0x16b], al
mov al, byte [ebp - 0x149]
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x161], 0
mov byte [ebp - 0x165], al
xor ah, cl
mov al, byte [ebp - 0x14a]
xor dl, cl
xor al, cl
mov byte [ebp - 0x168], ah
mov byte [ebp - 0x164], al
xor ch, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x169], dl
mov byte [ebp - 0x163], al
mov al, byte [ebp - 0x14c]
xor al, cl
mov byte [ebp - 0x167], ch
mov byte [ebp - 0x162], al
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x15b]
mov byte [ebp - 0x166], dh
push esi
push eax
mov byte [ebp - 0x161], 0
lea eax, [ebp - 0x16b]
jmp 0x1002cee3
mov eax, dword [esi + 0x18]
test eax, eax
je 0x1002c990
cmp edi, eax
jne 0x1002c990
cmp byte [0x100aad93], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad93], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c8b2
mov esi, dword [esi]
mov cl, 0x59
mov byte [ebp - 0x16c], 0x36
mov dl, cl
mov byte [ebp - 0x149], 0x44
xor cl, byte [ebp - 0x16c]
mov al, 0x7a
xor al, byte [ebp - 0x16c]
mov dh, dl
mov byte [ebp - 0x16b], al
mov ah, 0x42
mov al, byte [ebp - 0x149]
mov ch, 0x78
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], 0x5b
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ah, cl
xor al, cl
mov byte [ebp - 0x14b], 0x57
mov byte [ebp - 0x164], al
xor ch, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x14c], 0x5a
mov byte [ebp - 0x163], al
mov al, byte [ebp - 0x14c]
xor al, cl
mov byte [ebp - 0x169], dl
mov dl, 0x69
mov byte [ebp - 0x161], 0
mov byte [ebp - 0x168], ah
mov cl, 0x78
mov byte [ebp - 0x167], ch
mov ah, 0x51
mov byte [ebp - 0x162], al
mov ch, 0x72
mov byte [ebp - 0x161], 0
mov al, 0x4d
mov byte [ebp - 0x15c], 0x1d
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x74
mov byte [ebp - 0x14b], 0x73
mov byte [ebp - 0x14c], 0x7a
jmp 0x1002ce42
mov eax, dword [esi + 0x1c]
test eax, eax
je 0x1002ca8c
cmp edi, eax
jne 0x1002ca8c
cmp byte [0x100aad94], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad94], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002c9ca
mov esi, dword [esi]
mov cl, 0x2a
mov byte [ebp - 0x16c], 0x45
mov dl, cl
mov byte [ebp - 0x149], 0x22
xor cl, byte [ebp - 0x16c]
mov al, 9
xor al, byte [ebp - 0x16c]
mov ah, 0x31
mov byte [ebp - 0x16b], al
mov ch, 8
mov al, byte [ebp - 0x149]
mov dh, 0x24
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], 0x2c
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ah, cl
xor al, cl
mov byte [ebp - 0x14b], 0x26
mov byte [ebp - 0x164], al
xor ch, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x169], dl
mov dl, 0x3b
mov byte [ebp - 0x168], ah
mov byte [ebp - 0x167], ch
mov cl, 0x2a
mov byte [ebp - 0x163], al
mov ah, 3
mov byte [ebp - 0x162], 0
mov al, 0x1f
mov byte [ebp - 0x15c], 0x4f
mov ch, 0x20
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x26
mov byte [ebp - 0x14b], 0x21
mov byte [ebp - 0x14c], 0x28
jmp 0x1002ce3b
mov eax, dword [esi + 0x20]
test eax, eax
je 0x1002cb7a
cmp edi, eax
jne 0x1002cb7a
cmp byte [0x100aad95], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad95], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002cac6
mov esi, dword [esi]
mov cl, 0x73
mov byte [ebp - 0x16c], 0x1c
mov dl, cl
mov byte [ebp - 0x149], 0x6e
xor cl, byte [ebp - 0x16c]
mov al, 0x50
xor al, byte [ebp - 0x16c]
mov ah, 0x68
mov byte [ebp - 0x16b], al
mov ch, 0x4e
mov al, byte [ebp - 0x149]
mov dh, 0x7d
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], 0x79
xor dl, cl
mov byte [ebp - 0x165], al
mov al, byte [ebp - 0x14a]
xor ah, cl
xor ch, cl
mov byte [ebp - 0x169], dl
xor dh, cl
mov byte [ebp - 0x163], 0
xor al, cl
mov byte [ebp - 0x168], ah
mov dl, 0x59
mov byte [ebp - 0x167], ch
mov byte [ebp - 0x164], al
mov cl, 0x48
mov byte [ebp - 0x163], 0
mov al, 0x7d
mov byte [ebp - 0x15c], 0x2d
mov ah, 0x61
mov ch, 0x42
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x44
mov byte [ebp - 0x14b], 0x43
mov byte [ebp - 0x14c], 0x4a
jmp 0x1002ce42
mov eax, dword [esi + 0x24]
test eax, eax
je 0x1002cc2d
cmp edi, eax
jne 0x1002cc2d
cmp byte [0x100aad96], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad96], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002cbb4
mov esi, dword [esi]
mov cl, 0x29
mov dword [ebp - 0x15c], 0x46466529
mov dword [ebp - 0x158], 0x4e597c5d
xor eax, eax
mov dword [ebp - 0x154], 0x4c4d485b
mov byte [ebp - 0x150], 0
nop dword [eax]
xor byte [ebp + eax - 0x15b], cl
inc eax
cmp eax, 0xb
jae 0x1002cbf5
mov cl, byte [ebp - 0x15c]
jmp 0x1002cbe0
mov dl, 0x37
mov byte [ebp - 0x150], 0
mov byte [ebp - 0x16c], 0x43
mov al, 0x13
mov cl, 0x26
mov byte [ebp - 0x149], dl
mov ah, 0xf
mov byte [ebp - 0x14a], 0x2a
mov ch, 0x2c
mov byte [ebp - 0x14b], 0x2d
mov byte [ebp - 0x14c], 0x24
jmp 0x1002c7d8
mov eax, dword [esi + 0x28]
test eax, eax
je 0x1002cd45
cmp edi, eax
jne 0x1002cd45
cmp byte [0x100aad97], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad97], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002cc67
mov esi, dword [esi]
mov cl, 0x3c
mov byte [ebp - 0x16c], 0x53
mov dl, cl
mov byte [ebp - 0x149], 0x3a
xor cl, byte [ebp - 0x16c]
mov al, 0x1f
xor al, byte [ebp - 0x16c]
mov ah, 0x27
mov byte [ebp - 0x16b], al
mov ch, 6
mov al, byte [ebp - 0x149]
mov dh, 0x3d
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], 0x22
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ah, cl
xor al, cl
mov byte [ebp - 0x14b], 0x26
mov byte [ebp - 0x164], al
xor ch, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x14c], 0x36
mov byte [ebp - 0x163], al
mov al, byte [ebp - 0x14c]
xor al, cl
mov byte [ebp - 0x169], dl
mov dl, 0x65
mov byte [ebp - 0x161], 0
mov byte [ebp - 0x168], ah
mov cl, 0x74
mov byte [ebp - 0x167], ch
mov ah, 0x5d
mov byte [ebp - 0x162], al
mov ch, 0x7e
mov byte [ebp - 0x161], 0
mov al, 0x41
mov byte [ebp - 0x15c], 0x11
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x78
mov byte [ebp - 0x14b], 0x7f
mov byte [ebp - 0x14c], 0x76
jmp 0x1002ce42
mov eax, dword [esi + 0x2c]
test eax, eax
je 0x1002cef5
cmp edi, eax
jne 0x1002cef5
cmp byte [0x100aad98], 1
lea ecx, [ebp - 0x18c]
setne al
movzx edx, al
mov byte [0x100aad98], al
call fcn.100161e0
mov esi, eax
cmp dword [esi + 0x14], 0x10
jb 0x1002cd7f
mov esi, dword [esi]
mov cl, 0x41
mov byte [ebp - 0x16c], 0x2e
mov dl, cl
mov byte [ebp - 0x149], 0x4f
xor cl, byte [ebp - 0x16c]
mov al, 0x62
xor al, byte [ebp - 0x16c]
mov ah, 0x5a
mov byte [ebp - 0x16b], al
mov ch, 0x6d
mov al, byte [ebp - 0x149]
mov dh, 0x5c
mov byte [ebp - 0x16a], cl
mov cl, byte [ebp - 0x16c]
xor al, cl
mov byte [ebp - 0x14a], 0x48
mov byte [ebp - 0x165], al
xor dl, cl
mov al, byte [ebp - 0x14a]
xor ch, cl
xor al, cl
mov byte [ebp - 0x14b], ah
mov byte [ebp - 0x164], al
xor ah, cl
mov al, byte [ebp - 0x14b]
xor dh, cl
xor al, cl
mov byte [ebp - 0x169], dl
mov dl, 0x72
mov byte [ebp - 0x168], ah
mov byte [ebp - 0x167], ch
mov cl, 0x63
mov byte [ebp - 0x163], al
mov ah, 0x4a
mov byte [ebp - 0x162], 0
mov al, 0x56
mov byte [ebp - 0x15c], 6
mov ch, 0x69
mov byte [ebp - 0x149], dl
mov byte [ebp - 0x14a], 0x6f
mov byte [ebp - 0x14b], 0x68
mov byte [ebp - 0x14c], 0x61
mov byte [ebp - 0x162], 0
xor al, byte [ebp - 0x15c]
xor cl, byte [ebp - 0x15c]
mov byte [ebp - 0x15b], al
mov al, byte [ebp - 0x149]
mov byte [ebp - 0x15a], cl
mov cl, byte [ebp - 0x15c]
xor al, cl
mov byte [ebp - 0x166], dh
mov byte [ebp - 0x155], al
xor ah, cl
mov al, byte [ebp - 0x14a]
mov dh, ch
xor al, cl
mov byte [ebp - 0x158], ah
mov byte [ebp - 0x154], al
xor dl, cl
mov al, byte [ebp - 0x14b]
xor ch, cl
xor al, cl
mov byte [ebp - 0x151], 0
mov byte [ebp - 0x153], al
xor dh, cl
mov al, byte [ebp - 0x14c]
xor al, cl
mov byte [ebp - 0x159], dl
mov byte [ebp - 0x152], al
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x16b]
mov byte [ebp - 0x157], ch
push esi
push eax
mov byte [ebp - 0x156], dh
lea eax, [ebp - 0x15b]
mov byte [ebp - 0x151], 0
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x18c]
call fcn.10002220
mov eax, dword [ebp - 0x134]
cmp eax, 0x10
jb 0x1002cf13
inc eax
lea ecx, [ebp - 0x148]
push eax
push dword [ebp - 0x148]
call fcn.10002650
mov al, 1
jmp 0x1002cf19
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10067955
mov esp, ebp
pop ebp
ret 8