Function at 0x591be0
Capabilities:
Get hostname
Get http document via iwebbrowser2
Get session user name
Parse pe header
Schedule task via itaskscheduler
Schedule task via itaskservice

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5feb3f
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x148
mov eax, dword [0x70f200]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, edx
mov dword [ebp - 0xf4], edi
push 1
push 0x6288a4
xorps xmm0, xmm0
push ecx
lea ecx, [ebp - 0x50]
movq qword [ebp - 0x40], xmm0
movups xmmword [ebp - 0x50], xmm0
call fcn.005d92a0
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0
call fcn.005d9210
cmp eax, 6
je 0x591c65
mov byte [ebp - 0x109], 0
jmp 0x593cfc
xorps xmm0, xmm0
mov dword [ebp - 0x7c], 0
lea ecx, [ebp - 0x84]
movq qword [ebp - 0x84], xmm0
call fcn.005dc5e0
push 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x38]
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
push 0
movq qword [ebp - 0x38], xmm0
call fcn.005dc570
push 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x50]
xorps xmm0, xmm0
mov dword [ebp - 0x54], 0
push 2
movq qword [ebp - 0x5c], xmm0
call fcn.005d9220
push eax
lea ecx, [ebp - 0x5c]
call fcn.005dc570
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 3
push eax
push 0
push 0
push 0x101
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x108], 0x101
call fcn.005db9a0
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
lea ecx, [ebp - 0x38]
call fcn.005dc3a0
push 0
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x118], eax
call fcn.005dbed0
call fcn.005d8790
movsd xmm1, qword [0x6edab8]
comisd xmm1, xmm0
jbe 0x592259
push 1
push 0x627968
xorps xmm0, xmm0
lea ecx, [ebp - 0x50]
push 4
movups xmmword [ebp - 0x78], xmm0
movq qword [ebp - 0x68], xmm0
call fcn.005d9220
push eax
lea ecx, [ebp - 0x78]
call fcn.005d92a0
push 1
push 0x6287b8
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x50]
xorps xmm0, xmm0
push 5
movups xmmword [ebp - 0xa0], xmm0
movq qword [ebp - 0x90], xmm0
call fcn.005d9220
push eax
lea ecx, [ebp - 0xa0]
call fcn.005d92a0
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 5
call fcn.005d9210
cmp eax, 3
jne 0x591ddf
lea ecx, [ebp - 0xa0]
call fcn.005d9210
cmp eax, 2
jb 0x591ddf
mov dword [ebp - 0xe0], 0
lea eax, [ebp - 0xe0]
push eax
push 0x6ed834
push 1
push 0
push 0x6ed7c0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x591dfe
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x591ddf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xa0]
call fcn.005d9280
lea ecx, [ebp - 0x78]
call fcn.005d9280
mov byte [ebp - 0x109], 0
jmp 0x593ce1
mov dword [ebp - 0xd4], 0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x50]
mov eax, dword [ebp - 0xe0]
mov esi, dword [eax]
lea eax, [ebp - 0xd4]
push eax
push 0x6ed8fc
push 0
call fcn.005d9220
push eax
push dword [ebp - 0xe0]
call dword [esi + 0x18]
test eax, eax
js 0x591e84
nop dword [eax + eax]
mov eax, dword [ebp - 0xd4]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x10]
test eax, eax
jns 0x591e40
mov eax, dword [ebp - 0xd4]
push 0x2000
push eax
mov ecx, dword [eax]
call dword [ecx + 0x70]
test eax, eax
jns 0x591ed2
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x591e7b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc
jmp 0x591dcf
mov eax, dword [ebp - 0xe0]
lea ecx, [ebp - 0x50]
mov esi, dword [eax]
lea eax, [ebp - 0xd4]
push eax
push 0x6ed8fc
push 0x6ed6e8
push 0
call fcn.005d9220
push eax
push dword [ebp - 0xe0]
call dword [esi + 0x20]
test eax, eax
jns 0x591e52
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x591ec9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa
jmp 0x591dcf
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x50]
push 2
mov esi, dword [eax]
call fcn.005d9220
push eax
push dword [ebp - 0xd4]
call dword [esi + 0x80]
test eax, eax
jns 0x591f12
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x591f09
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe
jmp 0x591dcf
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x50]
push 3
mov esi, dword [eax]
call fcn.005d9220
push eax
push dword [ebp - 0xd4]
call dword [esi + 0x88]
test eax, eax
jns 0x591f52
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x591f49
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x10
jmp 0x591dcf
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x50]
push 1
mov esi, dword [eax]
call fcn.005d9220
push eax
push dword [ebp - 0xd4]
call dword [esi + 0x48]
mov eax, dword [ebp - 0xd4]
push 0x1b7740
push eax
mov ecx, dword [eax]
call dword [ecx + 0xa8]
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x5c]
mov esi, dword [eax]
call fcn.005dc190
push eax
push dword [ebp - 0xd4]
call dword [esi + 0x90]
push str.LocalSystem
lea ecx, [ebp - 0x38]
call fcn.005dc4c0
test al, al
je 0x591fbd
push 0x62439c
lea ecx, [ebp - 0x38]
call fcn.005dc510
cmp dword [ebp - 0x118], 0
je 0x591fe2
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x38]
push 0
mov esi, dword [eax]
call fcn.005dc190
push eax
push dword [ebp - 0xd4]
call dword [esi + 0x78]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0xfc], 0
mov byte [ebp - 4], 0x11
lea edx, [ebp - 0xfc]
mov eax, dword [ebp - 0xd4]
push edx
lea edx, [ebp - 0x2c]
push edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
test eax, eax
jns 0x592043
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x592026
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59203a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x14
jmp 0x591dcf
push 0x30
lea eax, [ebp - 0xd0]
push 0
push eax
call fcn.00420090
add esp, 0xc
mov eax, 0x30
mov word [ebp - 0xd0], ax
test edi, edi
jne 0x59206e
mov dword [ebp - 0xb0], edi
jmp 0x59209a
jle 0x592083
mov dword [ebp - 0xb0], 1
mov word [ebp - 0xac], di
jmp 0x59209a
mov eax, dword [ebp - 0xb0]
cmp edi, 0xffffffff
mov ecx, 7
cmove eax, ecx
mov dword [ebp - 0xb0], eax
push 0
lea ecx, [ebp - 0x78]
call fcn.005d9220
push eax
call fcn.004227e6
add esp, 4
mov word [ebp - 0xcc], ax
lea ecx, [ebp - 0x78]
push 1
call fcn.005d9220
push eax
call fcn.004227e6
add esp, 4
mov word [ebp - 0xca], ax
lea ecx, [ebp - 0x78]
push 2
call fcn.005d9220
push eax
call fcn.004227e6
add esp, 4
mov word [ebp - 0xc8], ax
lea ecx, [ebp - 0xa0]
push 0
call fcn.005d9220
push eax
call fcn.004227e6
add esp, 4
mov word [ebp - 0xc0], ax
lea ecx, [ebp - 0xa0]
push 1
call fcn.005d9220
push eax
call fcn.004227e6
mov word [ebp - 0xbe], ax
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xfc]
add esp, 4
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0xc]
test eax, eax
jns 0x59216a
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x59214d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592161
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x17
jmp 0x591dcf
mov dword [ebp - 0xf4], 0
mov byte [ebp - 4], 0x18
lea edx, [ebp - 0xf4]
mov eax, dword [ebp - 0xd4]
push edx
push 0x604c50
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x5921d8
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x5921a7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x5921bb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x5921cf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1c
jmp 0x591dcf
mov eax, dword [ebp - 0xf4]
push 1
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
test eax, eax
sete byte [ebp - 0x109]
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x592205
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1e
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x592219
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59222d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x592241
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xa0]
call fcn.005d9280
lea ecx, [ebp - 0x78]
call fcn.005d9280
jmp 0x593ce1
mov dword [ebp - 0xdc], 0
lea eax, [ebp - 0xdc]
push eax
push 0x61e720
push 1
push 0
push 0x61e730
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x59228b
mov byte [ebp - 4], 0x22
jmp 0x593977
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x148]
push eax
call esi
movups xmm0, xmmword [ebp - 0x148]
lea eax, [ebp - 0x138]
push eax
movups xmmword [ebp - 0x158], xmm0
call esi
movups xmm0, xmmword [ebp - 0x138]
lea eax, [ebp - 0x28]
push eax
movups xmmword [ebp - 0x98], xmm0
call esi
movups xmm0, xmmword [ebp - 0x28]
lea eax, [ebp - 0x128]
push eax
movups xmmword [ebp - 0x70], xmm0
call esi
mov byte [ebp - 4], 0x26
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x158]
mov eax, dword [ebp - 0xdc]
mov ecx, esp
sub esp, 0x10
mov edx, dword [eax]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x98]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x70]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x128]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
shr eax, 0x1f
mov dword [ebp - 0x110], eax
lea eax, [ebp - 0x128]
push eax
call esi
lea eax, [ebp - 0x28]
push eax
call esi
lea eax, [ebp - 0x138]
push eax
call esi
lea eax, [ebp - 0x148]
push eax
call esi
cmp byte [ebp - 0x110], 0
je 0x592361
mov byte [ebp - 4], 0x27
jmp 0x593977
mov dword [ebp - 0xd4], 0
sub esp, 8
mov byte [ebp - 4], 0x28
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 0
lea ecx, [ebp - 0x50]
movq qword [ebp - 0x24], xmm0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 5
call fcn.005d9220
push eax
push 0x62fb88
push 4
call fcn.005d9220
push eax
lea ecx, [ebp - 0x24]
call fcn.005dc520
push 0x624284
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x29
call fcn.00401a90
mov byte [ebp - 4], 0x2a
mov edx, dword [eax]
test edx, edx
je 0x5923d1
mov edx, dword [edx]
jmp 0x5923d3
xor edx, edx
mov eax, dword [ebp - 0xdc]
lea esi, [ebp - 0xd4]
push esi
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov ecx, eax
mov byte [ebp - 4], 0x29
mov esi, dword [ebp - 0x110]
or edi, 0xffffffff
shr ecx, 0x1f
mov dword [ebp - 0xec], ecx
test esi, esi
je 0x59244c
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x59244c
test esi, esi
je 0x59244c
mov eax, dword [esi]
test eax, eax
je 0x592424
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x59243b
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
ret
call 0x14e6b045
invalid
invalid
invalid
add esp, 8
test cl, cl
je 0x592475
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x2b
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59246c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x2c
jmp 0x593977
push 0
lea ecx, [ebp - 0x50]
call fcn.005d9220
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0x2d
mov edx, dword [eax]
test edx, edx
je 0x592499
mov edx, dword [edx]
jmp 0x59249b
xor edx, edx
mov eax, dword [ebp - 0xd4]
push 0
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov esi, dword [ebp - 0xec]
test esi, esi
je 0x5924f7
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x5924f7
test esi, esi
je 0x5924f7
mov eax, dword [esi]
test eax, eax
je 0x5924d5
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x5924ec
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
add esp, 8
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xe4], 0
mov byte [ebp - 4], 0x2f
lea edx, [ebp - 0xd8]
mov eax, dword [ebp - 0xdc]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x592575
mov byte [ebp - 4], 0x30
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x59253c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x31
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592550
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x32
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59256c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x33
jmp 0x593977
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0xe4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
jns 0x5925d9
mov byte [ebp - 4], 0x34
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5925a0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x35
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x5925b4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x5925d0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x37
jmp 0x593977
lea ecx, [ebp - 0x84]
call fcn.005dc190
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0x38
mov edx, dword [eax]
test edx, edx
je 0x5925fe
mov edx, dword [edx]
jmp 0x592600
xor edx, edx
mov eax, dword [ebp - 0xe4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 0x2f
mov esi, dword [ebp - 0xec]
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x59266f
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x59266f
test esi, esi
je 0x59266f
mov eax, dword [esi]
test eax, eax
je 0x592647
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x59265e
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x5926c0
mov byte [ebp - 4], 0x39
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592687
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x59269b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x5926b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3c
jmp 0x593977
mov eax, dword [ebp - 0xe4]
lea ecx, [ebp - 0x50]
push 1
mov esi, dword [eax]
call fcn.005d9220
push eax
push dword [ebp - 0xe4]
call dword [esi + 0x20]
test eax, eax
jns 0x59272d
mov byte [ebp - 4], 0x3d
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5926f4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x3e
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592708
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x3f
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592724
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x40
jmp 0x593977
mov dword [ebp - 0xe8], 0
mov byte [ebp - 4], 0x41
lea edx, [ebp - 0xe8]
mov eax, dword [ebp - 0xd8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
jns 0x5927b3
mov byte [ebp - 4], 0x42
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592766
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x43
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x59277a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x44
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x59278e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x45
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x5927aa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x46
jmp 0x593977
push 0x62fb8c
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0x47
mov eax, dword [eax]
test eax, eax
je 0x5927d1
mov edx, dword [eax]
jmp 0x5927d3
xor edx, edx
mov eax, dword [ebp - 0xe8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x20]
mov ecx, eax
mov byte [ebp - 4], 0x41
mov esi, dword [ebp - 0xec]
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x592842
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x592842
test esi, esi
je 0x592842
mov eax, dword [esi]
test eax, eax
je 0x59281a
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x592831
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x5928a7
mov byte [ebp - 4], 0x48
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x59285a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x49
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x59286e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4a
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592882
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x4b
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59289e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4c
jmp 0x593977
mov eax, dword [ebp - 0xe8]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
test eax, eax
jns 0x59291a
mov byte [ebp - 4], 0x4d
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x5928cd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4e
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5928e1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x4f
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x5928f5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x50
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592911
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x51
jmp 0x593977
cmp dword [ebp - 0x118], 0
je 0x592af3
push 0
push 1
push 1
push 0
push 0x624284
lea ecx, [ebp - 0x38]
call fcn.005daa70
test eax, eax
jne 0x59298c
lea eax, [ebp - 0xec]
mov dword [ebp - 0xec], 0x80
push eax
push 0
push 0
push 0x80
lea ecx, [ebp - 0x38]
call fcn.005db9a0
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x624284
lea ecx, [ebp - 0x38]
call fcn.005da780
mov eax, dword [ebp - 0xe8]
push 3
push eax
mov ecx, dword [eax]
call dword [ecx + 0x38]
test eax, eax
jns 0x5929ff
mov byte [ebp - 4], 0x52
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x5929b2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x53
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5929c6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x54
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x5929da
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x55
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x5929f6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x56
jmp 0x593977
lea ecx, [ebp - 0x38]
call fcn.005dc190
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0x57
mov edx, dword [eax]
test edx, edx
je 0x592a21
mov edx, dword [edx]
jmp 0x592a23
xor edx, edx
mov eax, dword [ebp - 0xe8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov esi, dword [ebp - 0xec]
mov ecx, eax
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x592a8e
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x592a8e
test esi, esi
je 0x592a8e
mov eax, dword [esi]
test eax, eax
je 0x592a66
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x592a7d
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x592af3
mov byte [ebp - 4], 0x58
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592aa6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x59
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592aba
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5a
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592ace
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x5b
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592aea
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5c
jmp 0x593977
mov dword [ebp - 0xf0], 0
mov byte [ebp - 4], 0x5d
lea edx, [ebp - 0xf0]
mov eax, dword [ebp - 0xd8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
jns 0x592b8d
mov byte [ebp - 4], 0x5e
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x592b2c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x5f
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592b40
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x60
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592b54
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x61
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592b68
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x62
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592b84
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x63
jmp 0x593977
mov eax, dword [ebp - 0xf0]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x58]
test eax, eax
jns 0x592c14
mov byte [ebp - 4], 0x64
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x592bb3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x65
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592bc7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x66
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592bdb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x67
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592bef
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x68
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592c0b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x69
jmp 0x593977
mov eax, dword [ebp - 0xf0]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebp - 0xf0]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov dword [ebp - 0xe0], 0
mov byte [ebp - 4], 0x6a
lea edx, [ebp - 0xe0]
mov eax, dword [ebp - 0xd8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x592ce2
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x592c6d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6c
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x592c81
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6d
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592c95
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6e
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592ca9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6f
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592cbd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592cd9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x71
jmp 0x593977
mov dword [ebp - 0xf8], 0
mov byte [ebp - 4], 0x72
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x592cff
lea edx, [eax + 1]
jmp 0x592d19
jle 0x592d08
mov edx, 2
jmp 0x592d19
mov edx, dword [ebp - 0x114]
cmp eax, 0xffffffff
mov ecx, 9
cmove edx, ecx
mov eax, dword [ebp - 0xe0]
lea esi, [ebp - 0xf8]
push esi
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
test eax, eax
jns 0x592dd2
mov byte [ebp - 4], 0x73
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x592d49
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x74
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x592d5d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x75
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x592d71
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x76
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592d85
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x77
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592d99
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x78
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592dad
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592dc9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7a
jmp 0x593977
push str.Trigger1
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0x7b
mov eax, dword [eax]
test eax, eax
je 0x592df0
mov edx, dword [eax]
jmp 0x592df2
xor edx, edx
mov eax, dword [ebp - 0xf8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
mov ecx, eax
mov byte [ebp - 4], 0x72
mov esi, dword [ebp - 0xec]
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x592e61
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x592e61
test esi, esi
je 0x592e61
mov eax, dword [esi]
test eax, eax
je 0x592e39
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x592e50
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x592f06
mov byte [ebp - 4], 0x7c
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x592e7d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7d
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x592e91
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7e
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x592ea5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592eb9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x80
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x592ecd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x81
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x592ee1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x82
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x592efd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x83
jmp 0x593977
lea ecx, [ebp - 0x24]
call fcn.005dc190
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0x84
mov edx, dword [eax]
test edx, edx
je 0x592f28
mov edx, dword [edx]
jmp 0x592f2a
xor edx, edx
mov eax, dword [ebp - 0xf8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov esi, dword [ebp - 0xec]
mov ecx, eax
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x592f95
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x592f95
test esi, esi
je 0x592f95
mov eax, dword [esi]
test eax, eax
je 0x592f6d
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x592f84
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x59303a
mov byte [ebp - 4], 0x85
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x592fb1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x86
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x592fc5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x87
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x592fd9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x88
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x592fed
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x89
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x593001
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8a
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x593015
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x8b
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x593031
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8c
jmp 0x593977
mov esi, dword [ebp - 0xf4]
test esi, esi
jle 0x59313c
mov dword [ebp - 0xf4], 0
mov byte [ebp - 4], 0x8d
lea edx, [ebp - 0xf4]
mov eax, dword [ebp - 0xf8]
push edx
push 0x61e710
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x593126
mov byte [ebp - 4], 0x8e
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x593089
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8f
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x59309d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x90
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x5930b1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x91
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x5930c5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x92
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x5930d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x93
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5930ed
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x94
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x593101
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0x95
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59311d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x96
jmp 0x593977
mov eax, dword [ebp - 0xf4]
push esi
push eax
mov ecx, dword [eax]
call dword [ecx + 0x54]
mov byte [ebp - 4], 0x97
jmp 0x59337c
cmp dword [ebp - 0x118], 0
je 0x59338c
cmp esi, 0xffffffff
jne 0x59338c
mov dword [ebp - 0xf4], 0
mov byte [ebp - 4], 0x98
lea edx, [ebp - 0xf4]
mov eax, dword [ebp - 0xf8]
push edx
push 0x61e740
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x593230
mov byte [ebp - 4], 0x99
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x593193
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9a
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x5931a7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9b
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x5931bb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9c
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x5931cf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9d
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x5931e3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9e
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5931f7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9f
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x59320b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xa0
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x593227
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa1
jmp 0x593977
lea ecx, [ebp - 0x38]
call fcn.005dc190
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0xa2
mov edx, dword [eax]
test edx, edx
je 0x593252
mov edx, dword [edx]
jmp 0x593254
xor edx, edx
mov eax, dword [ebp - 0xf4]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov esi, dword [ebp - 0xec]
mov ecx, eax
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x5932bf
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x5932bf
test esi, esi
je 0x5932bf
mov eax, dword [esi]
test eax, eax
je 0x593297
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x5932ae
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x593378
mov byte [ebp - 4], 0xa3
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x5932db
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa4
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x5932ef
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa5
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x593303
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa6
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x593317
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x59332b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa8
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x59333f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa9
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x593353
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xaa
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59336f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xab
jmp 0x593977
mov byte [ebp - 4], 0xac
mov eax, dword [ebp - 0xf4]
test eax, eax
je 0x59338c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0
mov byte [ebp - 4], 0xaf
lea edx, [ebp - 0xfc]
mov eax, dword [ebp - 0xd8]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x5934a2
mov byte [ebp - 4], 0xb0
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x5933dd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb1
mov eax, dword [ebp - 0x104]
test eax, eax
je 0x5933f1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb2
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x593405
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb3
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x593419
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb4
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x59342d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb5
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x593441
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb6
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x593455
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb7
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x593469
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb8
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x59347d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xb9
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x593499
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xba
jmp 0x593977
mov eax, dword [ebp - 0xfc]
lea edx, [ebp - 0x104]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
test eax, eax
jns 0x593598
mov byte [ebp - 4], 0xbb
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x5934d3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xbc
mov eax, dword [ebp - 0x104]
test eax, eax
je 0x5934e7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xbd
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x5934fb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xbe
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x59350f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xbf
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x593523
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc0
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x593537
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc1
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x59354b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc2
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x59355f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc3
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x593573
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xc4
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x59358f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc5
jmp 0x593977
mov eax, dword [ebp - 0x104]
lea edx, [ebp - 0x100]
push edx
push 0x61e760
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jns 0x593690
mov byte [ebp - 4], 0xc6
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x5935cb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc7
mov eax, dword [ebp - 0x104]
test eax, eax
je 0x5935df
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc8
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x5935f3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xc9
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x593607
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xca
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x59361b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcb
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x59362f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcc
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x593643
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xcd
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x593657
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xce
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x59366b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xcf
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x593687
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd0
jmp 0x593977
push 2
lea ecx, [ebp - 0x50]
call fcn.005d9220
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0xd1
mov edx, dword [eax]
test edx, edx
je 0x5936b4
mov edx, dword [edx]
jmp 0x5936b6
xor edx, edx
mov eax, dword [ebp - 0x100]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov ecx, eax
mov byte [ebp - 4], 0xaf
mov esi, dword [ebp - 0xec]
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x593725
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x593725
test esi, esi
je 0x593725
mov eax, dword [esi]
test eax, eax
je 0x5936fd
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x593714
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x593806
mov byte [ebp - 4], 0xd2
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x593741
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd3
mov eax, dword [ebp - 0x104]
test eax, eax
je 0x593755
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd4
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x593769
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd5
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x59377d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd6
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x593791
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd7
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x5937a5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd8
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x5937b9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd9
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x5937cd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xda
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x5937e1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xdb
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x5937fd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xdc
jmp 0x593977
push 3
lea ecx, [ebp - 0x50]
call fcn.005d9220
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0xdd
mov edx, dword [eax]
test edx, edx
je 0x59382a
mov edx, dword [edx]
jmp 0x59382c
xor edx, edx
mov eax, dword [ebp - 0x100]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov ecx, eax
mov byte [ebp - 4], 0xaf
mov esi, dword [ebp - 0xec]
shr ecx, 0x1f
mov dword [ebp - 0x110], ecx
test esi, esi
je 0x59389b
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x59389b
test esi, esi
je 0x59389b
mov eax, dword [esi]
test eax, eax
je 0x593873
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x59388a
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
mov ecx, dword [ebp - 0x110]
add esp, 8
test cl, cl
je 0x593993
mov byte [ebp - 4], 0xde
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x5938b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xdf
mov eax, dword [ebp - 0x104]
test eax, eax
je 0x5938cb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe0
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x5938df
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe1
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x5938f3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe2
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x593907
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe3
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x59391b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe4
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x59392f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe5
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x593943
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe6
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x593957
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xe7
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x593973
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe8
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x593987
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 0x109], 0
jmp 0x593ce1
lea ecx, [ebp - 0x5c]
call fcn.005dc190
push eax
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0xe9
mov edx, dword [eax]
test edx, edx
je 0x5939b5
mov edx, dword [edx]
jmp 0x5939b7
xor edx, edx
mov eax, dword [ebp - 0x100]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
mov byte [ebp - 4], 0xaf
mov esi, dword [ebp - 0xec]
test esi, esi
je 0x593a15
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x593a15
test esi, esi
je 0x593a15
mov eax, dword [esi]
test eax, eax
je 0x5939f3
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x593a0a
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
add esp, 8
push str.Action1
lea ecx, [ebp - 0xec]
call fcn.00401a90
mov byte [ebp - 4], 0xea
mov edx, dword [eax]
test edx, edx
je 0x593a33
mov edx, dword [edx]
jmp 0x593a35
xor edx, edx
mov eax, dword [ebp - 0x100]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x20]
mov esi, dword [ebp - 0xec]
test esi, esi
je 0x593a8f
mov eax, edi
lock xadd dword [esi + 8], eax
dec eax
jne 0x593a8f
test esi, esi
je 0x593a8f
mov eax, dword [esi]
test eax, eax
je 0x593a6d
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x593a84
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
add esp, 8
mov dword [ebp - 0x2c], 0
mov eax, 8
mov byte [ebp - 4], 0xeb
push 0x62439c
mov word [ebp - 0x128], ax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x120], eax
test eax, eax
je 0x593d2a
movups xmm0, xmmword [ebp - 0x128]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x138]
push eax
movups xmmword [ebp - 0x70], xmm0
call esi
movups xmm0, xmmword [ebp - 0x138]
lea eax, [ebp - 0x148]
push eax
movups xmmword [ebp - 0x98], xmm0
call esi
mov byte [ebp - 4], 0xee
lea ecx, [ebp - 0x50]
movups xmm0, xmmword [ebp - 0x148]
push 0
movups xmmword [ebp - 0x158], xmm0
call fcn.005d9220
push eax
lea ecx, [ebp - 0x118]
call fcn.00401a90
mov byte [ebp - 4], 0xef
mov esi, dword [eax]
test esi, esi
je 0x593b26
mov esi, dword [esi]
jmp 0x593b28
xor esi, esi
movups xmm0, xmmword [ebp - 0x70]
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0x2c]
push ecx
sub esp, 0x10
mov ecx, esp
mov edx, dword [eax]
push 3
sub esp, 0x10
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x98]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x158]
push 6
push dword [ebp - 0xd8]
movups xmmword [ecx], xmm0
push esi
push eax
call dword [edx + 0x44]
mov esi, dword [ebp - 0x118]
test eax, eax
sete byte [ebp - 0x109]
test esi, esi
je 0x593bcb
lock xadd dword [esi + 8], edi
dec edi
jne 0x593bc1
test esi, esi
je 0x593bc1
mov eax, dword [esi]
test eax, eax
je 0x593b9f
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x593bb6
push eax
call fcn.0041e1c3
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.0041e7c1
add esp, 8
mov dword [ebp - 0x118], 0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x148]
push eax
call esi
lea eax, [ebp - 0x138]
push eax
call esi
lea eax, [ebp - 0x128]
push eax
call esi
mov byte [ebp - 4], 0xf0
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x593bfd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf1
mov eax, dword [ebp - 0x100]
test eax, eax
je 0x593c11
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf2
mov eax, dword [ebp - 0x104]
test eax, eax
je 0x593c25
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf3
mov eax, dword [ebp - 0xfc]
test eax, eax
je 0x593c39
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf4
mov eax, dword [ebp - 0xf8]
test eax, eax
je 0x593c4d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf5
mov eax, dword [ebp - 0xe0]
test eax, eax
je 0x593c61
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf6
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x593c75
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf7
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x593c89
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf8
mov eax, dword [ebp - 0xe4]
test eax, eax
je 0x593c9d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf9
mov eax, dword [ebp - 0xd8]
test eax, eax
je 0x593cb1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x24]
call fcn.005dc430
mov byte [ebp - 4], 0xfa
mov eax, dword [ebp - 0xd4]
test eax, eax
je 0x593ccd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xfb
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x593ce1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5c]
call fcn.005dc430
lea ecx, [ebp - 0x38]
call fcn.005dc430
lea ecx, [ebp - 0x84]
call fcn.005dc430
lea ecx, [ebp - 0x50]
call fcn.005d9280
mov al, byte [ebp - 0x109]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0041e1b5
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
push 0x8007000e
call fcn.0041de50
int3