Function at 0x409790
Capabilities:
Encode data using xor
Get common file path
Get startup folder
Set registry value

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 0x5f6b05
mov eax, dword fs:[0]
push eax
push ebx
mov eax, 0x1360
call fcn.0055f310
mov eax, dword [0x6817dc]
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 - 0x12fc], esi
push 0xc
lea ecx, [esi + 0x4e8]
mov dword [ebp - 0x12f8], 0
push 0x66500c
call fcn.00405d50
mov dword [ebp - 0x12e8], 0xb834921d
xor ecx, ecx
mov dword [ebp - 0x12e4], 0x986d
mov byte [ebp - 0x12e0], 1
nop word [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12e8], ax
inc ecx
cmp ecx, 3
jb 0x409820
xor eax, eax
mov byte [ebp - 0x12e0], 0
mov dword [ebp - 0x12f4], 0x7ec8b9c2
xor ecx, ecx
mov dword [ebp - 0x12f0], 0xb1f4a556
mov word [ebp - 0x12ec], ax
mov byte [ebp - 0x12ea], 1
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12f4], ax
inc ecx
cmp ecx, 4
jb 0x409861
mov byte [ebp - 0x12ea], 0
add esi, 0x4b8
mov dword [ebp - 4], 0
xor eax, eax
mov word [ebp - 0x12dc], ax
mov eax, dword [esi + 0x10]
inc eax
mov dword [ebp - 0x12cc], 0
mov dword [ebp - 0x12c8], 7
mov dword [ebp - 0x12f8], 1
cmp eax, 7
jbe 0x4098dc
mov byte [ebp - 0x1298], 0
lea ecx, [ebp - 0x12dc]
push dword [ebp - 0x1298]
push eax
call fcn.0040e4a0
mov dword [ebp - 0x12cc], 0
push esi
lea ecx, [ebp - 0x12dc]
call fcn.0040bef0
mov edx, dword [ebp - 0x12c8]
mov eax, edx
mov ecx, dword [ebp - 0x12cc]
sub eax, ecx
cmp eax, 1
jb 0x409931
cmp edx, 8
lea esi, [ebp - 0x12dc]
push 2
cmovae esi, dword [ebp - 0x12dc]
lea edi, [ecx + 1]
push 0x664eac
mov dword [ebp - 0x12cc], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005c9d10
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
jmp 0x409952
push 1
push 0x664eac
mov byte [ebp - 0x1298], 0
lea ecx, [ebp - 0x12dc]
push dword [ebp - 0x1298]
push 1
call fcn.0040dca0
mov eax, dword [ebp - 0x12fc]
lea ecx, [ebp - 0x12dc]
add eax, 0x4e8
push eax
call fcn.0040bef0
mov dword [ebp - 0x1280], 0
xor ecx, ecx
mov dword [ebp - 0x127c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1290], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1280], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x12c8]
cmp edx, 8
jb 0x4099eb
mov ecx, dword [ebp - 0x12dc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4099e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a593
push edx
push ecx
call fcn.0055e71a
add esp, 8
xor eax, eax
mov dword [ebp - 0x12cc], 0
mov word [ebp - 0x12dc], ax
lea eax, [ebp - 0x1278]
push eax
mov dword [ebp - 0x12c8], 7
call fcn.00405ae0
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x1264]
mov eax, edx
mov ecx, dword [ebp - 0x1268]
sub eax, ecx
cmp eax, 1
jb 0x409a61
cmp edx, 8
lea esi, [ebp - 0x1278]
push 2
cmovae esi, dword [ebp - 0x1278]
lea edi, [ecx + 1]
push 0x664eac
mov dword [ebp - 0x1268], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005c9d10
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
jmp 0x409a82
push 1
push 0x664eac
mov byte [ebp - 0x1298], 0
lea ecx, [ebp - 0x1278]
push dword [ebp - 0x1298]
push 1
call fcn.0040dca0
lea ecx, [ebp - 0x12e8]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x409a90
mov eax, dword [ebp - 0x1264]
sub ecx, edx
mov edx, dword [ebp - 0x1268]
sub eax, edx
sar ecx, 1
cmp ecx, eax
ja 0x409aed
cmp dword [ebp - 0x1264], 8
lea eax, [ecx + ecx]
push eax
lea esi, [ebp - 0x1278]
cmovae esi, dword [ebp - 0x1278]
lea eax, [ebp - 0x12e8]
push eax
lea edi, [ecx + edx]
mov dword [ebp - 0x1268], edi
lea eax, [esi + edx*2]
push eax
call fcn.005c9d10
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
jmp 0x409b0e
push ecx
lea eax, [ebp - 0x12e8]
mov byte [ebp - 0x1298], 0
push eax
push dword [ebp - 0x1298]
push ecx
lea ecx, [ebp - 0x1278]
call fcn.0040dca0
mov edx, dword [ebp - 0x1264]
mov eax, edx
mov ecx, dword [ebp - 0x1268]
sub eax, ecx
cmp eax, 4
jb 0x409b57
cmp edx, 8
lea esi, [ebp - 0x1278]
push 8
cmovae esi, dword [ebp - 0x1278]
lea edi, [ecx + 4]
push str..lnk
mov dword [ebp - 0x1268], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005c9d10
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
jmp 0x409b78
push 4
push str..lnk
mov byte [ebp - 0x1298], 0
lea ecx, [ebp - 0x1278]
push dword [ebp - 0x1298]
push 4
call fcn.0040dca0
cmp dword [ebp - 0x1264], 8
lea ecx, [ebp - 0x1278]
lea eax, [ebp - 0x1290]
cmovae ecx, dword [ebp - 0x1278]
cmp dword [ebp - 0x127c], 8
push ecx
cmovae eax, dword [ebp - 0x1290]
push ecx
push eax
call fcn.00405820
mov byte [ebp - 4], 4
xor eax, eax
mov word [ebp - 0x12b8], ax
lea eax, [ebp - 0x1298]
push eax
push 0xb
push 0
mov dword [ebp - 0x12a8], 0
mov dword [ebp - 0x12a4], 7
mov dword [ebp - 0x12f8], 0xa
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderLocation]
test eax, eax
jne 0x409c47
push 0x410
push eax
lea eax, [ebp - 0x630]
push eax
call fcn.005c9930
add esp, 0xc
lea eax, [ebp - 0x630]
push eax
push dword [ebp - 0x1298]
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
push dword [ebp - 0x1298]
call dword [sym.imp.ole32.dll_CoTaskMemFree]
lea ecx, [ebp - 0x630]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x409c25
sub ecx, edx
lea eax, [ebp - 0x630]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x12b8]
call fcn.00405d50
lea ecx, [ebp - 0x1278]
call fcn.00405c20
movups xmm0, xmmword [ebp - 0x12b8]
xor eax, eax
xor ecx, ecx
movups xmmword [ebp - 0x1278], xmm0
movq xmm0, qword [ebp - 0x12a8]
mov byte [ebp - 4], 3
movq qword [ebp - 0x1268], xmm0
mov dword [ebp - 0x12dc], 0xeb93eb9e
mov dword [ebp - 0x12d8], 0xebaaebb6
mov dword [ebp - 0x12d4], 0xebb5eba1
mov dword [ebp - 0x12d0], 0xeba4eba9
mov dword [ebp - 0x12cc], 0xeb97ebb9
mov word [ebp - 0x12c8], ax
mov byte [ebp - 0x12c6], 1
nop dword [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12dc], ax
inc ecx
cmp ecx, 0xa
jb 0x409cc0
xor eax, eax
mov byte [ebp - 0x12c6], 0
mov word [ebp - 0x12b8], ax
lea ecx, [ebp - 0x12b8]
push 0xa
lea eax, [ebp - 0x12dc]
mov dword [ebp - 0x12a8], 0
push eax
mov dword [ebp - 0x12a4], 7
call fcn.00405d50
lea eax, [ebp - 0x12b8]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x1278]
call fcn.0040bef0
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x12a4]
cmp edx, 8
jb 0x409d66
mov ecx, dword [ebp - 0x12b8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x409d5c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a598
push edx
push ecx
call fcn.0055e71a
add esp, 8
lea ecx, [ebp - 0x12e8]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x409d70
mov eax, dword [ebp - 0x1264]
sub ecx, edx
mov edx, dword [ebp - 0x1268]
sub eax, edx
sar ecx, 1
cmp ecx, eax
ja 0x409dcd
cmp dword [ebp - 0x1264], 8
lea eax, [ecx + ecx]
push eax
lea esi, [ebp - 0x1278]
cmovae esi, dword [ebp - 0x1278]
lea eax, [ebp - 0x12e8]
push eax
lea edi, [ecx + edx]
mov dword [ebp - 0x1268], edi
lea eax, [esi + edx*2]
push eax
call fcn.005c9d10
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
jmp 0x409dee
push ecx
lea eax, [ebp - 0x12e8]
mov byte [ebp - 0x1298], 0
push eax
push dword [ebp - 0x1298]
push ecx
lea ecx, [ebp - 0x1278]
call fcn.0040dca0
mov edx, dword [ebp - 0x1264]
mov eax, edx
mov ecx, dword [ebp - 0x1268]
sub eax, ecx
cmp eax, 4
jb 0x409e37
cmp edx, 8
lea esi, [ebp - 0x1278]
push 8
cmovae esi, dword [ebp - 0x1278]
lea edi, [ecx + 4]
push str..lnk
mov dword [ebp - 0x1268], edi
lea eax, [esi + ecx*2]
push eax
call fcn.005c9d10
add esp, 0xc
xor eax, eax
mov word [esi + edi*2], ax
jmp 0x409e58
push 4
push str..lnk
mov byte [ebp - 0x1298], 0
lea ecx, [ebp - 0x1278]
push dword [ebp - 0x1298]
push 4
call fcn.0040dca0
cmp dword [ebp - 0x1264], 8
lea ecx, [ebp - 0x1278]
lea eax, [ebp - 0x1290]
cmovae ecx, dword [ebp - 0x1278]
cmp dword [ebp - 0x127c], 8
push ecx
cmovae eax, dword [ebp - 0x1290]
push ecx
push eax
call fcn.00405820
mov ecx, dword [ebp - 0x12fc]
cmp dword [ecx + 0x4fc], 8
lea eax, [ecx + 0x4e8]
jb 0x409e9f
mov eax, dword [eax]
cmp dword [ecx + 0x4cc], 8
lea esi, [ecx + 0x4b8]
mov ecx, esi
jb 0x409eb2
mov ecx, dword [esi]
push eax
push ecx
lea eax, [ebp - 0xa40]
push 0x664eb8
push eax
call fcn.00406620
add esp, 0x10
mov eax, esi
cmp dword [esi + 0x14], 8
jb 0x409ed2
mov eax, dword [esi]
push eax
lea eax, [ebp - 0xe50]
push 0x665034
push eax
call fcn.00406620
add esp, 0xc
cmp dword [esi + 0x14], 8
jb 0x409eef
mov esi, dword [esi]
xor eax, eax
mov dword [ebp - 0x12c4], 0xebb0ebe7
mov dword [ebp - 0x12c0], 0xeb90eb98
xor ecx, ecx
mov dword [ebp - 0x12bc], 0xebaeeba8
mov dword [ebp - 0x12b8], 0xebbaeba6
mov dword [ebp - 0x12b4], 0xebaaebbe
mov dword [ebp - 0x12b0], 0xeba1eba0
mov dword [ebp - 0x12ac], 0xebaaebe0
mov dword [ebp - 0x12a8], 0xebb4eba8
mov word [ebp - 0x12a4], ax
mov byte [ebp - 0x12a2], 1
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12c4], ax
inc ecx
cmp ecx, 0x10
jb 0x409f51
push esi
lea eax, [ebp - 0x12c4]
mov byte [ebp - 0x12a2], 0
push eax
lea eax, [ebp - 0x1260]
push eax
call fcn.00406620
add esp, 0xc
lea eax, [ebp - 0x220]
push 0x208
push 0
push eax
call fcn.005c9930
xor eax, eax
mov dword [ebp - 0x12d8], 0xebb6ebb8
add esp, 0xc
mov dword [ebp - 0x12d4], 0xeba4ebac
mov dword [ebp - 0x12d0], 0xebb0eba9
xor ecx, ecx
mov dword [ebp - 0x12cc], 0xeba7eba9
mov word [ebp - 0x12c8], ax
mov byte [ebp - 0x12c6], 1
nop dword [eax]
nop word [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12d8], ax
inc ecx
cmp ecx, 8
jb 0x409fe0
xor eax, eax
mov byte [ebp - 0x12c6], 0
mov dword [ebp - 0x1370], 0xeb8ceb91
xor ecx, ecx
mov dword [ebp - 0x136c], 0xeb91eb82
mov dword [ebp - 0x1368], 0xeb86eb91
mov dword [ebp - 0x1364], 0xeb8ceb9a
mov dword [ebp - 0x1360], 0xeb86eb96
mov dword [ebp - 0x135c], 0xebaeeba5
mov dword [ebp - 0x1358], 0xeba0ebbc
mov dword [ebp - 0x1354], 0xebbeeba3
mov dword [ebp - 0x1350], 0xeba7ebb4
mov dword [ebp - 0x134c], 0xeb82eb88
mov dword [ebp - 0x1348], 0xebb9ebbf
mov dword [ebp - 0x1344], 0xebb6ebbc
mov dword [ebp - 0x1340], 0xeba8ebad
mov dword [ebp - 0x133c], 0xeb9eeb80
mov dword [ebp - 0x1338], 0xebadebab
mov dword [ebp - 0x1334], 0xeb84eb92
mov dword [ebp - 0x1330], 0xeb97eb8c
mov dword [ebp - 0x132c], 0xeb80ebb2
mov dword [ebp - 0x1328], 0xeb94eb94
mov dword [ebp - 0x1324], 0xeb86eb81
mov dword [ebp - 0x1320], 0xebb7eb84
mov dword [ebp - 0x131c], 0xeb83ebb9
mov dword [ebp - 0x1318], 0xeb81eb87
mov dword [ebp - 0x1314], 0xeb85eb83
mov dword [ebp - 0x1310], 0xeb9feb93
mov dword [ebp - 0x130c], 0xeba9eb98
mov dword [ebp - 0x1308], 0xeb84ebd3
mov word [ebp - 0x1304], ax
mov byte [ebp - 0x1302], 1
nop dword [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x1370], ax
inc ecx
cmp ecx, 0x36
jb 0x40a120
lea eax, [ebp - 0x12d8]
mov byte [ebp - 0x1302], 0
push eax
lea eax, [ebp - 0x1370]
push eax
lea eax, [ebp - 0x220]
push eax
call fcn.00406620
add esp, 0xc
lea eax, [ebp - 0x1294]
push eax
lea eax, [ebp - 0x129c]
push eax
push 0
push 0x20006
push 0
push 0
push 0
lea eax, [ebp - 0x220]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x40a4cf
mov dword [ebp - 0x12bc], 0xebaaeb86
xor ecx, ecx
mov dword [ebp - 0x12b8], 0xebb5ebb7
mov dword [ebp - 0x12b4], 0xeba6ebaa
mov dword [ebp - 0x12b0], 0xeb80ebb1
mov dword [ebp - 0x12ac], 0xeba4eba9
mov dword [ebp - 0x12a8], 0xeba2
mov byte [ebp - 0x12a4], 1
nop dword [eax]
nop word [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12bc], ax
inc ecx
cmp ecx, 0xb
jb 0x40a1e0
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [ebp - 0xa40]
push eax
mov byte [ebp - 0x12a4], 0
call esi
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
lea eax, [eax*2 + 2]
push eax
lea eax, [ebp - 0xa40]
push eax
push 1
push 0
lea eax, [ebp - 0x12bc]
push eax
push dword [ebp - 0x129c]
call edi
test eax, eax
jne 0x40a4cf
mov dword [ebp - 0x12bc], 0xebaaeb86
xor ecx, ecx
mov dword [ebp - 0x12b8], 0xebb5ebb7
mov dword [ebp - 0x12b4], 0xeba6ebaa
mov dword [ebp - 0x12b0], 0xeb87ebb1
mov dword [ebp - 0x12ac], 0xeba6ebab
mov dword [ebp - 0x12a8], 0xeba9
mov byte [ebp - 0x12a4], 1
nop
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12bc], ax
inc ecx
cmp ecx, 0xb
jb 0x40a280
lea eax, [ebp - 0x12e8]
mov byte [ebp - 0x12a4], 0
push eax
call esi
lea eax, [eax*2 + 2]
push eax
lea eax, [ebp - 0x12e8]
push eax
push 1
push 0
lea eax, [ebp - 0x12bc]
push eax
push dword [ebp - 0x129c]
call edi
test eax, eax
jne 0x40a4cf
mov dword [ebp - 0x12c4], 0xebadeb8b
xor ecx, ecx
mov dword [ebp - 0x12c0], 0xebb1ebb7
mov dword [ebp - 0x12bc], 0xebabeba7
mov dword [ebp - 0x12b8], 0xeb85eba4
mov dword [ebp - 0x12b4], 0xeba8eba5
mov dword [ebp - 0x12b0], 0xebb9ebad
mov dword [ebp - 0x12ac], 0xeba0eba7
mov dword [ebp - 0x12a8], 0xebbe
mov byte [ebp - 0x12a4], 1
nop word [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12c4], ax
inc ecx
cmp ecx, 0xf
jb 0x40a330
lea eax, [ebp - 0xe50]
mov byte [ebp - 0x12a4], 0
push eax
call esi
lea eax, [eax*2 + 2]
push eax
lea eax, [ebp - 0xe50]
push eax
push 1
push 0
lea eax, [ebp - 0x12c4]
push eax
push dword [ebp - 0x129c]
call edi
test eax, eax
jne 0x40a4cf
mov dword [ebp - 0x12dc], 0xebb6eb92
xor ecx, ecx
mov dword [ebp - 0x12d8], 0xeba9eba6
mov dword [ebp - 0x12d4], 0xebb4ebaf
mov dword [ebp - 0x12d0], 0xebaceba0
mov dword [ebp - 0x12cc], 0xebb8
mov byte [ebp - 0x12c8], 1
nop dword [eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12dc], ax
inc ecx
cmp ecx, 9
jb 0x40a3c0
lea eax, [ebp - 0x12f4]
mov byte [ebp - 0x12c8], 0
push eax
call esi
lea eax, [eax*2 + 2]
push eax
lea eax, [ebp - 0x12f4]
push eax
push 1
push 0
lea eax, [ebp - 0x12dc]
push eax
push dword [ebp - 0x129c]
call edi
test eax, eax
jne 0x40a4cf
mov dword [ebp - 0x12c4], 0xebadeb97
xor ecx, ecx
mov dword [ebp - 0x12c0], 0xebabebad
mov dword [ebp - 0x12bc], 0xebb3ebb5
mov dword [ebp - 0x12b8], 0xeba5eba9
mov dword [ebp - 0x12b4], 0xeb98eba6
mov dword [ebp - 0x12b0], 0xebbfebb8
mov dword [ebp - 0x12ac], 0xeba1eba7
mov dword [ebp - 0x12a8], 0xebb7
mov byte [ebp - 0x12a4], 1
nop word [eax + eax]
lea eax, [ecx - 0x143e]
xor word [ebp + ecx*2 - 0x12c4], ax
inc ecx
cmp ecx, 0xf
jb 0x40a470
lea eax, [ebp - 0x1260]
mov byte [ebp - 0x12a4], 0
push eax
call esi
lea eax, [eax*2 + 2]
push eax
lea eax, [ebp - 0x1260]
push eax
push 1
push 0
lea eax, [ebp - 0x12c4]
push eax
push dword [ebp - 0x129c]
call edi
test eax, eax
jne 0x40a4cf
push dword [ebp - 0x129c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 0x129d], 1
jmp 0x40a4d6
mov byte [ebp - 0x129d], 0
mov edx, dword [ebp - 0x1264]
cmp edx, 8
jb 0x40a516
mov ecx, dword [ebp - 0x1278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40a50c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a59d
push edx
push ecx
call fcn.0055e71a
add esp, 8
mov edx, dword [ebp - 0x127c]
xor eax, eax
mov dword [ebp - 0x1268], 0
mov dword [ebp - 0x1264], 7
mov word [ebp - 0x1278], ax
cmp edx, 8
jb 0x40a56f
mov ecx, dword [ebp - 0x1290]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x40a565
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a5a2
push edx
push ecx
call fcn.0055e71a
add esp, 8
mov al, byte [ebp - 0x129d]
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.0055e6d4
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.005ce7a3
call fcn.005ce7a3
call fcn.005ce7a3
call fcn.005ce7a3
int3