Function at 0x460710
Capabilities:
Parse url

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49fece
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x17a8
call fcn.0048db70
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1730], ecx
mov eax, dword [ebp - 0x1730]
mov dword [eax + 0x48], 0x52f6
mov dword [ebp - 4], 0
xor ecx, ecx
je 0x460761
push 0x80004003
call fcn.0048b8a0
mov edx, dword [ebp - 0x1730]
xor eax, eax
cmp dword [edx + 4], 0
sete al
movzx ecx, al
test ecx, ecx
je 0x460952
xor edx, edx
je 0x460789
push 0x80004003
call fcn.0048b8a0
mov eax, dword [ebp - 0x1730]
xor ecx, ecx
cmp dword [eax + 8], 0
sete cl
movzx edx, cl
neg edx
sbb edx, edx
inc edx
movzx eax, dl
test eax, eax
je 0x460952
mov dword [ebp - 0x8b4], 0
mov dword [ebp - 0x8ac], 0
mov dword [ebp - 0x8b0], 0
mov ecx, dword [ebp - 0x1730]
xor edx, edx
cmp dword [ecx + 8], 0
setne dl
movzx eax, dl
test eax, eax
je 0x460841
mov ecx, dword [ebp - 0x1730]
add ecx, 8
mov dword [ebp - 0xac8], ecx
mov edx, dword [ebp - 0xacc]
mov dword [ebp - 0x1734], edx
mov eax, dword [ebp - 0xac8]
cmp dword [eax], 0
jne 0x46080f
push 0x80004003
call fcn.0048b8a0
mov ecx, dword [ebp - 0xac8]
mov edx, dword [ecx]
mov dword [ebp - 0x1734], edx
push 0
push 0
mov eax, dword [ebp - 0x8ac]
push eax
mov ecx, dword [ebp - 0x8b0]
push ecx
mov edx, dword [ebp - 0x1734]
push edx
mov eax, dword [ebp - 0x1734]
mov ecx, dword [eax]
call dword [ecx + 0x14]
mov edx, dword [ebp - 0x1730]
mov dword [edx + 0x48], 0x5304
mov eax, dword [ebp - 0x1730]
add eax, 4
mov dword [ebp - 0xad0], eax
mov ecx, dword [ebp - 0xad0]
call fcn.0047d8c0
mov ecx, dword [ebp - 0xad0]
mov dword [ecx], 0
mov edx, dword [ebp - 0x1730]
mov eax, dword [edx + 8]
mov dword [ebp - 0xad4], eax
mov ecx, dword [ebp - 0xad0]
push ecx
push 0x4a3114
mov edx, dword [ebp - 0xad4]
push edx
call dword [sym.imp.ole32.dll_CoUnmarshalInterface]
mov dword [ebp - 0x8b4], eax
cmp dword [ebp - 0x8b4], 0
jge 0x460934
push 0x5309
mov eax, dword [ebp - 0x1730]
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [ebp - 0x8b4]
push edx
push 0x4b69c8
lea eax, [ebp - 0x920]
push eax
call fcn.0048cc64
add esp, 0x14
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0xa7c], esp
mov dword [ebp - 0xae0], ecx
push 0
push 0
mov ecx, dword [ebp - 0xae0]
call fcn.004236e0
lea edx, [ebp - 0x920]
push edx
call fcn.0048bc60
add esp, 4
push eax
lea eax, [ebp - 0x920]
push eax
mov ecx, dword [ebp - 0xae0]
call fcn.004241c0
mov ecx, dword [ebp - 0xae0]
mov dword [ebp - 0x1738], ecx
call fcn.00445850
add esp, 0x1c
jmp 0x461cbf
xor edx, edx
je 0x460942
push 0x80004003
call fcn.0048b8a0
push 0
mov ecx, dword [ebp - 0x1730]
add ecx, 8
call fcn.004695a0
jmp 0x460978
mov dword [ebp - 4], 0xffffffff
xor ecx, ecx
je 0x46098d
push 0x80004003
call fcn.0048b8a0
mov edx, dword [ebp - 0x1730]
xor eax, eax
cmp dword [edx + 4], 0
sete al
movzx ecx, al
test ecx, ecx
je 0x4609a8
jmp 0x461cbf
mov edx, dword [ebp - 0x1730]
mov byte [edx + 0x58], 1
mov eax, dword [ebp - 0x1730]
mov dword [eax + 0x48], 0x531a
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00464e80
mov dword [ebp - 4], 2
mov edx, dword [ebp - 0x1730]
mov dword [edx + 0x48], 0x531e
cmp dword [ebp - 0x14], 0
je 0x4609f2
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov dword [ebp - 0x173c], ecx
jmp 0x4609fc
mov dword [ebp - 0x173c], 0
mov edx, dword [ebp - 0x173c]
push edx
call fcn.0048c653
add esp, 4
add eax, 1
push eax
call fcn.0048a6d0
add esp, 4
mov dword [ebp - 0xa80], eax
mov eax, dword [ebp - 0xa80]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x1730]
mov dword [ecx + 0x48], 0x5323
cmp dword [ebp - 0x14], 0
je 0x460a46
mov edx, dword [ebp - 0x14]
mov eax, dword [edx]
mov dword [ebp - 0x1740], eax
jmp 0x460a50
mov dword [ebp - 0x1740], 0
cmp dword [ebp - 0x14], 0
je 0x460a63
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
mov dword [ebp - 0x1744], edx
jmp 0x460a6d
mov dword [ebp - 0x1744], 0
mov eax, dword [ebp - 0x1740]
push eax
call fcn.0048c653
add esp, 4
push eax
mov ecx, dword [ebp - 0x1744]
push ecx
mov edx, dword [ebp - 0x18]
push edx
call fcn.0048ef1d
add esp, 0xc
mov eax, dword [ebp - 0x1730]
mov dword [eax + 0x48], 0x5327
cmp dword [ebp - 0x14], 0
je 0x460ab0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx]
mov dword [ebp - 0x1748], edx
jmp 0x460aba
mov dword [ebp - 0x1748], 0
mov eax, dword [ebp - 0x1748]
push eax
call fcn.0048c653
add esp, 4
mov ecx, dword [ebp - 0x18]
mov byte [ecx + eax], 0
mov edx, dword [ebp - 0x18]
push edx
lea ecx, [ebp - 0x34]
call fcn.00416a60
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xa84], eax
mov ecx, dword [ebp - 0xa84]
push ecx
call fcn.0048bd78
add esp, 4
mov dword [ebp - 0x74], 0x800
cmp dword [ebp - 0x1c], 0x10
jb 0x460b10
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x174c], edx
jmp 0x460b19
lea eax, [ebp - 0x30]
mov dword [ebp - 0x174c], eax
push 0x10000000
lea ecx, [ebp - 0x74]
push ecx
lea edx, [ebp - 0x880]
push edx
mov eax, dword [ebp - 0x174c]
push eax
call dword [sym.imp.WININET.dll_InternetCanonicalizeUrlA]
push 0x3c
push 0
lea ecx, [ebp - 0x70]
push ecx
call fcn.0048d000
add esp, 0xc
mov dword [ebp - 0x70], 0x3c
push 0x104
call fcn.0048a6d0
add esp, 4
mov dword [ebp - 0xa88], eax
mov edx, dword [ebp - 0xa88]
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], 0x104
lea eax, [ebp - 0x70]
push eax
push 0x10000000
lea ecx, [ebp - 0x880]
push ecx
call fcn.0048bc60
add esp, 4
push eax
lea edx, [ebp - 0x880]
push edx
call dword [sym.imp.WININET.dll_InternetCrackUrlA]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x1730]
mov dword [eax + 0x48], 0x5338
mov ecx, dword [ebp - 0x60]
push ecx
lea ecx, [ebp - 0x8a0]
call fcn.00416a60
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x1730]
add edx, 4
mov dword [ebp - 0xb38], edx
mov eax, dword [ebp - 0xb38]
cmp dword [eax], 0
jne 0x460bdd
push 0x80004003
call fcn.0048b8a0
mov ecx, dword [ebp - 0xb38]
mov edx, dword [ecx]
mov dword [ebp - 0xb3c], edx
mov ecx, dword [ebp - 0xb3c]
call fcn.0044cca0
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x88c]
mov dword [ebp - 0xb48], eax
cmp dword [ebp - 0xb48], 0
jbe 0x460d15
push 0xffffffffffffffff
mov ecx, dword [0x4b8460]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, dword [ebp - 0x1730]
mov dword [edx + 0x48], 0x5341
mov eax, dword [0x4b65dc]
mov dword [ebp - 0xb4c], eax
mov ecx, dword [ebp - 0xb4c]
mov dword [ebp - 0xa90], ecx
lea edx, [ebp - 0x78]
push edx
lea eax, [ebp - 0xa8c]
push eax
mov ecx, 0x4b65d8
call fcn.00463360
mov dword [ebp - 0xb6c], eax
mov ecx, dword [ebp - 0xb6c]
mov edx, dword [ecx]
sub edx, dword [ebp - 0xa90]
neg edx
sbb edx, edx
inc edx
movzx eax, dl
test eax, eax
jne 0x460cb4
lea ecx, [ebp - 0x78]
push ecx
mov ecx, 0x4b65d8
call fcn.00463230
mov dword [ebp - 0xbc0], eax
lea edx, [ebp - 0x8a0]
push edx
mov ecx, dword [ebp - 0xbc0]
call fcn.00416b70
neg eax
sbb eax, eax
inc eax
movzx eax, al
neg eax
sbb eax, eax
inc eax
movzx ecx, al
test ecx, ecx
je 0x460cde
lea edx, [ebp - 0x8a0]
push edx
mov ecx, 0x4b8454
call fcn.00462b90
mov dword [ebp - 0x1750], eax
mov eax, dword [ebp - 0x1750]
mov ecx, dword [eax]
add ecx, 1
mov edx, dword [ebp - 0x1750]
mov dword [edx], ecx
lea eax, [ebp - 0x78]
push eax
mov ecx, 0x4b65d8
call fcn.00463230
mov dword [ebp - 0xc58], eax
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x8a0]
push ecx
mov ecx, dword [ebp - 0xc58]
call fcn.00423530
mov edx, dword [0x4b8460]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, dword [ebp - 0x1730]
cmp dword [eax + 0x50], 0
je 0x4614b4
mov ecx, dword [ebp - 0x1730]
mov dword [ecx + 0x48], 0x5350
call dword [sym.imp.USER32.dll_GetActiveWindow]
mov dword [ebp - 0x928], eax
mov edx, dword [ebp - 0x1730]
add edx, 4
mov dword [ebp - 0xc5c], edx
mov eax, dword [ebp - 0xc5c]
cmp dword [eax], 0
jne 0x460d62
push 0x80004003
call fcn.0048b8a0
mov ecx, dword [ebp - 0xc5c]
mov edx, dword [ecx]
mov dword [ebp - 0xc60], edx
mov ecx, dword [ebp - 0xc60]
call fcn.00468af0
mov word [ebp - 0x924], ax
movsx eax, word [ebp - 0x924]
test eax, eax
jne 0x460e09
mov ecx, dword [ebp - 0x1730]
cmp dword [ecx + 0x4c], 2
je 0x460e09
mov edx, dword [ebp - 0x1730]
add edx, 4
mov dword [ebp - 0xc6c], edx
mov eax, dword [ebp - 0xc6c]
cmp dword [eax], 0
jne 0x460dbd
push 0x80004003
call fcn.0048b8a0
mov ecx, dword [ebp - 0xc6c]
mov edx, dword [ecx]
mov dword [ebp - 0xc70], edx
push 0xffffffffffffffff
mov eax, dword [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc70]
mov edx, dword [ecx]
call dword [edx + 0xa4]
mov dword [ebp - 0xc74], eax
cmp dword [ebp - 0xc74], 0
jge 0x460e09
push 0x4a31a8
mov eax, dword [ebp - 0xc70]
push eax
mov ecx, dword [ebp - 0xc74]
push ecx
call fcn.0048b8b0
mov edx, dword [ebp - 0x1730]
mov dword [edx + 0x48], 0x5359
mov eax, dword [ebp - 0x78]
push eax
call dword [sym.imp.USER32.dll_SetActiveWindow]
mov ecx, dword [ebp - 0x1730]
movzx edx, byte [ecx + 0x59]
test edx, edx
je 0x460e5d
push 3
push 0
push 0
push 0
push 0
push 1
mov eax, dword [ebp - 0x78]
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
mov ecx, dword [ebp - 0x928]
push ecx
call dword [sym.imp.USER32.dll_SetActiveWindow]
mov edx, dword [ebp - 0x1730]
mov byte [edx + 0x59], 0
jmp 0x460e9f
push 3
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
mov eax, dword [ebp - 0x78]
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
push 3
push 0
push 0
push 0
push 0
push 0
mov ecx, dword [ebp - 0x78]
push ecx
call dword [sym.imp.USER32.dll_SetWindowPos]
push 3
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
mov edx, dword [ebp - 0x78]
push edx
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebp - 0x1730]
mov dword [eax + 0x48], 0x5369
mov byte [ebp - 4], 5
mov dword [ebp - 0x92c], 0
mov byte [ebp - 4], 6
mov dword [ebp - 0x930], 0
mov ecx, dword [ebp - 0x1730]
add ecx, 0x50
push ecx
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x1754], eax
mov edx, dword [ebp - 0x1754]
cmp dword [edx + 0x70], 0
je 0x461491
lea ecx, [ebp - 0x92c]
call fcn.0047d8c0
mov dword [ebp - 0x92c], 0
mov eax, dword [ebp - 0x1730]
add eax, 0x50
push eax
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x1758], eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4a3114
mov edx, dword [ebp - 0x1758]
mov eax, dword [edx + 0x70]
push eax
call dword [sym.imp.ole32.dll_CoGetInterfaceAndReleaseStream]
mov dword [ebp - 0x930], eax
cmp dword [ebp - 0x930], 0
jge 0x460fea
mov ecx, dword [ebp - 0x1730]
add ecx, 0x50
push ecx
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x175c], eax
push 0x5374
mov edx, dword [ebp - 0x175c]
mov eax, dword [edx + 0x70]
push eax
mov ecx, dword [ebp - 0x930]
push ecx
push 0x4b69c8
lea edx, [ebp - 0x9b8]
push edx
call fcn.0048cc64
add esp, 0x14
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0xa94], esp
mov dword [ebp - 0xfb0], eax
push 0
push 0
mov ecx, dword [ebp - 0xfb0]
call fcn.004236e0
lea ecx, [ebp - 0x9b8]
push ecx
call fcn.0048bc60
add esp, 4
push eax
lea edx, [ebp - 0x9b8]
push edx
mov ecx, dword [ebp - 0xfb0]
call fcn.004241c0
mov eax, dword [ebp - 0xfb0]
mov dword [ebp - 0x1760], eax
call fcn.00445850
add esp, 0x1c
mov ecx, dword [ebp - 0x1730]
add ecx, 0x50
push ecx
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x1764], eax
mov edx, dword [ebp - 0x1764]
add edx, 0x1c
mov dword [ebp - 0x1100], edx
mov eax, dword [ebp - 0x1100]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x1104], ecx
mov edx, dword [ebp - 0x1104]
lea eax, [edx + edx + 2]
push eax
call fcn.0048a6d0
add esp, 4
mov dword [ebp - 0x1768], eax
mov ecx, dword [ebp - 0x1768]
mov dword [ebp - 0xa98], ecx
mov edx, dword [ebp - 0xa98]
mov dword [ebp - 0x938], edx
mov eax, dword [ebp - 0x1730]
add eax, 0x50
push eax
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x176c], eax
mov ecx, dword [ebp - 0x176c]
add ecx, 0x1c
mov dword [ebp - 0x1218], ecx
mov edx, dword [ebp - 0x1218]
mov eax, dword [edx + 0x14]
mov dword [ebp - 0x121c], eax
mov ecx, dword [ebp - 0x1730]
add ecx, 0x50
push ecx
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x1770], eax
mov edx, dword [ebp - 0x1770]
add edx, 0x1c
mov dword [ebp - 0x1330], edx
mov eax, dword [ebp - 0x1330]
cmp dword [eax + 0x18], 0x10
jb 0x4610d1
mov ecx, dword [ebp - 0x1330]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x1774], edx
jmp 0x4610e0
mov eax, dword [ebp - 0x1330]
add eax, 4
mov dword [ebp - 0x1774], eax
mov ecx, dword [ebp - 0x121c]
add ecx, 1
push ecx
mov edx, dword [ebp - 0x1774]
push edx
mov eax, dword [ebp - 0x938]
push eax
call fcn.0048f771
add esp, 0xc
mov ecx, dword [ebp - 0x1730]
add ecx, 0x50
push ecx
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x1778], eax
mov edx, dword [ebp - 0x1778]
add edx, 0x1c
mov dword [ebp - 0x1444], edx
mov eax, dword [ebp - 0x1444]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x1448], ecx
mov edx, dword [ebp - 0x1448]
mov eax, dword [ebp - 0x938]
mov word [eax + edx*2], 0
mov ecx, dword [ebp - 0x938]
push ecx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x934], eax
push 0x4b6684
lea ecx, [ebp - 0x94c]
call fcn.00464dd0
mov dword [ebp - 0x177c], eax
mov byte [ebp - 4], 7
mov edx, 2
cmp edx, 2
je 0x461197
mov eax, 2
cmp eax, 0xb
je 0x461197
push 0x80070057
call fcn.0048b8a0
jmp 0x4611cc
mov ecx, 2
cmp ecx, 0xb
jne 0x4611ba
mov word [ebp - 0x948], 0xb
or edx, 0xffffffff
neg edx
sbb edx, edx
mov word [ebp - 0x940], dx
jmp 0x4611cc
mov word [ebp - 0x948], 2
mov word [ebp - 0x940], 0xffff
mov byte [ebp - 4], 8
lea eax, [ebp - 0x1478]
mov dword [ebp - 0x1458], eax
mov ecx, dword [ebp - 0x1458]
mov edx, dword [ebp - 0x94c]
mov dword [ecx], edx
mov eax, dword [ebp - 0x1458]
cmp dword [eax], 0
je 0x461213
mov ecx, dword [ebp - 0x1458]
mov edx, dword [ecx]
mov dword [ebp - 0x1454], edx
mov eax, dword [ebp - 0x1454]
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov ecx, dword [ebp - 0x1458]
mov dword [ebp - 0x1780], ecx
mov byte [ebp - 4], 9
cmp dword [ebp - 0x92c], 0
jne 0x461236
push 0x80004003
call fcn.0048b8a0
mov edx, dword [ebp - 0x92c]
mov dword [ebp - 0x145c], edx
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x948]
mov dword [ebp - 0x1470], eax
mov ecx, dword [ebp - 0x944]
mov dword [ebp - 0x146c], ecx
mov edx, dword [ebp - 0x940]
mov dword [ebp - 0x1468], edx
mov eax, dword [ebp - 0x93c]
mov dword [ebp - 0x1464], eax
cmp dword [ebp - 0x1478], 0
je 0x46128f
mov ecx, dword [ebp - 0x1478]
mov edx, dword [ecx]
mov dword [ebp - 0x1784], edx
jmp 0x461299
mov dword [ebp - 0x1784], 0
sub esp, 0x10
mov eax, esp
mov ecx, dword [ebp - 0x1470]
mov dword [eax], ecx
mov edx, dword [ebp - 0x146c]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x1468]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0x1464]
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x1784]
push eax
mov ecx, dword [ebp - 0x145c]
push ecx
mov edx, dword [ebp - 0x145c]
mov eax, dword [edx]
call dword [eax + 0x88]
mov dword [ebp - 0x1788], eax
mov ecx, dword [ebp - 0x1788]
mov dword [ebp - 0x1460], ecx
cmp dword [ebp - 0x1460], 0
jge 0x461310
push 0x4a31a8
mov edx, dword [ebp - 0x145c]
push edx
mov eax, dword [ebp - 0x1460]
push eax
call fcn.0048b8b0
mov ecx, dword [ebp - 0x1460]
mov dword [ebp - 0x1474], ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1478]
call fcn.0044c540
mov edx, dword [ebp - 0x934]
push edx
lea ecx, [ebp - 0x1490]
call fcn.00464e80
mov dword [ebp - 0x178c], eax
mov eax, dword [ebp - 0x178c]
mov dword [ebp - 0x1790], eax
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x92c], 0
jne 0x461366
push 0x80004003
call fcn.0048b8a0
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x1484], ecx
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0x1490], 0
je 0x46138f
mov edx, dword [ebp - 0x1490]
mov eax, dword [edx]
mov dword [ebp - 0x1794], eax
jmp 0x461399
mov dword [ebp - 0x1794], 0
push 0x4b5578
push 0x4b5578
push 0x4b5578
push 0x4b5578
mov ecx, dword [ebp - 0x1794]
push ecx
mov edx, dword [ebp - 0x1484]
push edx
mov eax, dword [ebp - 0x1484]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov dword [ebp - 0x1798], eax
mov edx, dword [ebp - 0x1798]
mov dword [ebp - 0x1488], edx
cmp dword [ebp - 0x1488], 0
jge 0x4613f9
push 0x4a324c
mov eax, dword [ebp - 0x1484]
push eax
mov ecx, dword [ebp - 0x1488]
push ecx
call fcn.0048b8b0
mov edx, dword [ebp - 0x1488]
mov dword [ebp - 0x148c], edx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1490]
call fcn.0044c540
mov eax, dword [ebp - 0x938]
mov dword [ebp - 0xaa4], eax
mov ecx, dword [ebp - 0xaa4]
push ecx
call fcn.0048bd78
add esp, 4
mov edx, dword [ebp - 0x1730]
add edx, 0x50
push edx
mov ecx, 0x4b8464
call fcn.004491b0
mov dword [ebp - 0x179c], eax
mov eax, dword [ebp - 0x179c]
mov dword [eax + 0x70], 0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x948]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [ebp - 0x15a4], eax
cmp dword [ebp - 0x15a4], 0
jge 0x461482
mov edx, dword [ebp - 0x15a4]
push edx
call fcn.0048b8a0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x94c]
call fcn.0044c540
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x92c]
call fcn.0047d8c0
jmp 0x4614a8
mov dword [ebp - 4], 4
jmp 0x4616ca
mov eax, dword [ebp - 0x1730]
mov dword [eax + 0x48], 0x5387
push 0x4b6684
lea ecx, [ebp - 0x9cc]
call fcn.00464dd0
mov byte [ebp - 4], 0xe
mov ecx, 2
cmp ecx, 2
je 0x4614f5
mov edx, 2
cmp edx, 0xb
je 0x4614f5
push 0x80070057
call fcn.0048b8a0
jmp 0x461529
mov eax, 2
cmp eax, 0xb
jne 0x461517
mov word [ebp - 0x9c8], 0xb
xor ecx, ecx
neg ecx
sbb ecx, ecx
mov word [ebp - 0x9c0], cx
jmp 0x461529
mov word [ebp - 0x9c8], 2
mov word [ebp - 0x9c0], 0
mov byte [ebp - 4], 0xf
lea edx, [ebp - 0x15d8]
mov dword [ebp - 0x15b4], edx
mov eax, dword [ebp - 0x15b4]
mov ecx, dword [ebp - 0x9cc]
mov dword [eax], ecx
mov edx, dword [ebp - 0x15b4]
cmp dword [edx], 0
je 0x461570
mov eax, dword [ebp - 0x15b4]
mov ecx, dword [eax]
mov dword [ebp - 0x15b0], ecx
mov edx, dword [ebp - 0x15b0]
add edx, 8
push edx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov eax, dword [ebp - 0x15b4]
mov dword [ebp - 0x17a0], eax
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x1730]
add ecx, 4
mov dword [ebp - 0x15b8], ecx
mov edx, dword [ebp - 0x15b8]
cmp dword [edx], 0
jne 0x4615a4
push 0x80004003
call fcn.0048b8a0
mov eax, dword [ebp - 0x15b8]
mov ecx, dword [eax]
mov dword [ebp - 0x15bc], ecx
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x9c8]
mov dword [ebp - 0x15d0], edx
mov eax, dword [ebp - 0x9c4]
mov dword [ebp - 0x15cc], eax
mov ecx, dword [ebp - 0x9c0]
mov dword [ebp - 0x15c8], ecx
mov edx, dword [ebp - 0x9bc]
mov dword [ebp - 0x15c4], edx
cmp dword [ebp - 0x15d8], 0
je 0x4615ff
mov eax, dword [ebp - 0x15d8]
mov ecx, dword [eax]
mov dword [ebp - 0x17a4], ecx
jmp 0x461609
mov dword [ebp - 0x17a4], 0
sub esp, 0x10
mov edx, esp
mov eax, dword [ebp - 0x15d0]
mov dword [edx], eax
mov ecx, dword [ebp - 0x15cc]
mov dword [edx + 4], ecx
mov eax, dword [ebp - 0x15c8]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x15c4]
mov dword [edx + 0xc], ecx
mov edx, dword [ebp - 0x17a4]
push edx
mov eax, dword [ebp - 0x15bc]
push eax
mov ecx, dword [ebp - 0x15bc]
mov edx, dword [ecx]
call dword [edx + 0x88]
mov dword [ebp - 0x15c0], eax
cmp dword [ebp - 0x15c0], 0
jge 0x461674
push 0x4a31a8
mov eax, dword [ebp - 0x15bc]
push eax
mov ecx, dword [ebp - 0x15c0]
push ecx
call fcn.0048b8b0
mov edx, dword [ebp - 0x15c0]
mov dword [ebp - 0x15d4], edx
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x15d8]
call fcn.0044c540
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x9c8]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [ebp - 0x15dc], eax
cmp dword [ebp - 0x15dc], 0
jge 0x4616bb
mov ecx, dword [ebp - 0x15dc]
push ecx
call fcn.0048b8a0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x9cc]
call fcn.0044c540
mov edx, dword [ebp - 0x1730]
movzx eax, byte [edx + 0x15]
test eax, eax
je 0x461727
mov ecx, dword [ebp - 0x1730]
mov dword [ecx + 0x48], 0x27f8
mov ecx, dword [ebp - 0x1730]
call fcn.0045f9a0
mov byte [ebp - 4], 3
push 0
push 1
lea ecx, [ebp - 0x8a0]
call fcn.004236e0
mov byte [ebp - 4], 2
push 0
push 1
lea ecx, [ebp - 0x34]
call fcn.004236e0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0044c540
jmp 0x461cbf
mov edx, dword [ebp - 0x1730]
mov dword [edx + 0x48], 0x5394
mov dword [ebp - 0x7c], 0
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x7c]
call fcn.0044c6a0
mov dword [ebp - 0x15e0], eax
cmp dword [ebp - 0x15e0], 0
jge 0x46176e
cmp dword [ebp - 0x15e0], 0x80004002
je 0x46176e
mov ecx, dword [ebp - 0x15e0]
push ecx
call fcn.0048b8a0
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x8a4], 0
mov byte [ebp - 4], 0x13
xor edx, edx
cmp dword [ebp - 0x7c], 0
setne dl
movzx eax, dl
test eax, eax
je 0x4617d4
cmp dword [ebp - 0x7c], 0
jne 0x4617a0
push 0x80004003
call fcn.0048b8a0
lea ecx, [ebp - 0xaac]
push ecx
mov ecx, dword [ebp - 0x7c]
call fcn.004687f0
mov dword [ebp - 0x15e4], eax
mov edx, dword [ebp - 0x15e4]
mov eax, dword [edx]
push eax
lea ecx, [ebp - 0x8a4]
call fcn.004695a0
lea ecx, [ebp - 0xaac]
call fcn.0047d8c0
mov ecx, dword [ebp - 0x1730]
mov dword [ecx + 0x48], 0x539b
mov dword [ebp - 0x884], 0
mov byte [ebp - 4], 0x14
xor edx, edx
je 0x4617fd
push 0x80004003
call fcn.0048b8a0
xor eax, eax
cmp dword [ebp - 0x8a4], 0
sete al
movzx ecx, al
neg ecx
sbb ecx, ecx
inc ecx
movzx edx, cl
test edx, edx
je 0x461954
cmp dword [ebp - 0x8a4], 0
jne 0x46182f
push 0x80004003
call fcn.0048b8a0
mov eax, dword [ebp - 0x8a4]
mov dword [ebp - 0x17a8], eax
lea ecx, [ebp - 0x884]
push ecx
push str._D_3
mov edx, dword [ebp - 0x17a8]
push edx
mov eax, dword [ebp - 0x17a8]
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
jl 0x461954
cmp dword [ebp - 0x884], 0
je 0x461954
mov dword [ebp - 0x9d0], 0
cmp dword [ebp - 0x8a4], 0
jne 0x46188a
push 0x80004003
call fcn.0048b8a0
mov edx, dword [ebp - 0x8a4]
mov dword [ebp - 0x17ac], edx
mov eax, dword [ebp - 0x17ac]
push eax
mov ecx, dword [ebp - 0x17ac]
mov edx, dword [ecx]
call dword [edx + 4]
lea eax, [ebp - 0x9d0]
push eax
push 0x4a30c8
mov ecx, dword [ebp - 0x1730]
push ecx
mov edx, dword [ebp - 0x884]
push edx
call fcn.00464c10
mov eax, dword [ebp - 0x9d0]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0xab0], esp
mov dword [ebp - 0x15e8], ecx
mov edx, dword [ebp - 0x884]
push edx
mov ecx, dword [ebp - 0x15e8]
call fcn.00464730
mov eax, dword [ebp - 0x15e8]
mov dword [ebp - 0x17b0], eax
lea ecx, [ebp - 0xab8]
push ecx
call fcn.00469600
add esp, 0xc
mov dword [ebp - 0x17b4], eax
mov edx, dword [ebp - 0x17b4]
mov dword [ebp - 0x17b8], edx
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x17b8]
push eax
mov ecx, dword [ebp - 0x1730]
add ecx, 0x18
call fcn.00463010
mov byte [ebp - 4], 0x14
cmp dword [ebp - 0xab8], 0
je 0x461954
mov ecx, dword [ebp - 0xab8]
push ecx
mov edx, dword [ebp - 0xab8]
mov eax, dword [edx]
call dword [eax + 8]
mov ecx, dword [ebp - 0x1730]
mov dword [ecx + 0x48], 0x53a7
mov edx, dword [ebp - 0x1730]
mov eax, dword [edx + 0x8c]
mov dword [ebp - 0x15fc], eax
cmp dword [ebp - 0x15fc], 0
je 0x461987
mov ecx, dword [ebp - 0x1730]
call fcn.0045e850
mov ecx, dword [ebp - 0x1730]
cmp dword [ecx + 0x50], 0
jne 0x461c46
cmp dword [0x4b8384], 0
je 0x461c46
mov edx, dword [ebp - 0x1730]
mov eax, dword [ebp - 0x7c]
cmp eax, dword [edx + 4]
jne 0x461c46
push 0x3e8
mov ecx, dword [0x4b842c]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x461c46
mov dword [ebp - 0x9d4], 0
mov byte [ebp - 4], 0x16
mov edx, dword [ebp - 0x7c]
push edx
lea ecx, [ebp - 0x9d4]
call fcn.004695a0
lea eax, [ebp - 0x9d4]
push eax
push 1
mov ecx, dword [0x4b8384]
mov edx, dword [ecx]
mov ecx, dword [0x4b8384]
call dword [edx + 0x34]
mov byte [ebp - 0x9d5], al
movzx eax, byte [ebp - 0x9d5]
test eax, eax
je 0x461c37
push 0xffffffffffffffff
mov ecx, dword [0x4b8470]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0
lea ecx, [ebp - 0x9f0]
call fcn.0044a280
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x9f0]
push edx
mov eax, dword [0x4b8384]
mov edx, dword [eax]
mov ecx, dword [0x4b8384]
call dword [edx + 0x40]
mov eax, dword [ebp - 0x9ec]
mov dword [ebp - 0x1608], eax
mov ecx, dword [ebp - 0x1608]
mov dword [ebp - 0x9f4], ecx
jmp 0x461a97
mov edx, dword [ebp - 0x9f4]
mov dword [ebp - 0x160c], edx
mov eax, dword [ebp - 0x9f4]
add eax, 0x58
mov dword [ebp - 0x9f4], eax
mov ecx, dword [ebp - 0x160c]
mov dword [ebp - 0xabc], ecx
mov edx, dword [ebp - 0x9e8]
mov dword [ebp - 0x1610], edx
mov eax, dword [ebp - 0x1610]
mov dword [ebp - 0xac0], eax
mov ecx, dword [ebp - 0x9f4]
sub ecx, dword [ebp - 0xac0]
neg ecx
sbb ecx, ecx
inc ecx
movzx edx, cl
neg edx
sbb edx, edx
inc edx
movzx eax, dl
test eax, eax
je 0x461bc1
mov ecx, dword [ebp - 0x9f4]
movzx edx, byte [ecx]
test edx, edx
je 0x461ae2
jmp 0x461a70
lea ecx, [ebp - 0xa78]
call fcn.004478e0
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x9f4]
add eax, 4
mov dword [ebp - 0x1614], eax
push 0xffffffffffffffff
push 0
mov ecx, dword [ebp - 0x1614]
push ecx
lea ecx, [ebp - 0xa78]
call fcn.00423530
mov edx, dword [ebp - 0x9f4]
add edx, 0x3c
mov dword [ebp - 0x1618], edx
push 0xffffffffffffffff
push 0
mov eax, dword [ebp - 0x1618]
push eax
lea ecx, [ebp - 0xa40]
call fcn.00423530
mov ecx, dword [ebp - 0x9f4]
add ecx, 0x20
mov dword [ebp - 0x161c], ecx
push 0xffffffffffffffff
push 0
mov edx, dword [ebp - 0x161c]
push edx
lea ecx, [ebp - 0xa24]
call fcn.00423530
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0xa5c]
call fcn.00423530
mov ecx, dword [0x4b5368]
mov dword [ebp - 0xac4], ecx
mov edx, dword [0x4b5368]
add edx, 1
mov dword [0x4b5368], edx
lea eax, [ebp - 0xa78]
push eax
lea ecx, [ebp - 0xac4]
push ecx
mov ecx, 0x4b8464
call fcn.004491b0
mov ecx, eax
call fcn.004479b0
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xa78]
call fcn.0043f8f0
jmp 0x461a70
call fcn.0046b270
mov edx, dword [0x4b8470]
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov dword [ebp - 0x9e0], 0
mov dword [ebp - 0x9dc], 0
lea eax, [ebp - 0x9dc]
push eax
lea ecx, [ebp - 0x9e0]
push ecx
mov edx, dword [0x4b8384]
mov eax, dword [edx]
mov ecx, dword [0x4b8384]
call dword [eax + 0x14]
movzx ecx, al
test ecx, ecx
je 0x461c28
mov edx, dword [ebp - 0x9dc]
push edx
mov eax, dword [ebp - 0x9e0]
push eax
push 6
mov ecx, dword [0x4b8388]
call fcn.0042ff60
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x9f0]
call fcn.0044a320
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x9d4]
call fcn.0047d8c0
mov ecx, dword [ebp - 0x1730]
mov dword [ecx + 0x48], 0x53d1
mov byte [ebp - 4], 0x13
cmp dword [ebp - 0x884], 0
je 0x461c72
mov edx, dword [ebp - 0x884]
push edx
mov eax, dword [ebp - 0x884]
mov ecx, dword [eax]
call dword [ecx + 8]
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x8a4]
call fcn.0047d8c0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x7c]
call fcn.0047d8c0
mov byte [ebp - 4], 3
push 0
push 1
lea ecx, [ebp - 0x8a0]
call fcn.004236e0
mov byte [ebp - 4], 2
push 0
push 1
lea ecx, [ebp - 0x34]
call fcn.004236e0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0044c540
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8