Function at 0x4114c0
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
push ebp
lea ebp, [esp - 0x148]
sub esp, 0x148
push 0xffffffffffffffff
push 0x630f02
mov eax, dword fs:[0]
push eax
sub esp, 0x84
mov eax, dword [0x70ee84]
xor eax, ebp
mov dword [ebp + 0x144], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
jmp 0x411562
jmp 0x4115c8
lea eax, [ebp - 0x38]
push eax
call 0x418db0
xor ebx, ebx
mov dword [ebp - 4], ebx
jmp 0x41163c
mov esi, 0xf
mov dword [ebp + 0x88], esi
mov dword [ebp + 0x84], ebx
mov byte [ebp + 0x74], bl
jmp 0x4116b6
mov dword [ebp + 0xc0], esi
mov dword [ebp + 0xbc], ebx
mov byte [ebp + 0xac], bl
jmp 0x41172e
mov dword [ebp + 0xa4], esi
mov dword [ebp + 0xa0], ebx
mov byte [ebp + 0x90], bl
push ebx
push ebx
mov byte [ebp - 4], 3
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jge 0x411807
mov edi, 0x10
cmp dword [ebp + 0xa4], edi
jb 0x411770
mov ecx, dword [ebp + 0x90]
push ecx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0xa4], esi
mov dword [ebp + 0xa0], ebx
mov byte [ebp + 0x90], bl
cmp dword [ebp + 0xc0], edi
jb 0x411799
mov edx, dword [ebp + 0xac]
push edx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0xc0], esi
mov dword [ebp + 0xbc], ebx
mov byte [ebp + 0xac], bl
cmp dword [ebp + 0x88], edi
jb 0x4117bf
mov eax, dword [ebp + 0x74]
push eax
call fcn.005bb180
add esp, 4
mov eax, dword [ebp - 0x2c]
mov dword [ebp + 0x88], esi
mov dword [ebp + 0x84], ebx
mov byte [ebp + 0x74], bl
cmp eax, ebx
je 0x4117ed
mov ecx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x28]
push ecx
call fcn.0041bab0
mov edx, dword [ebp - 0x2c]
push edx
call fcn.005bb180
add esp, 8
mov eax, dword [ebp - 0x38]
push eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], ebx
call fcn.005bb180
add esp, 4
jmp 0x414b90
jmp 0x41186d
jmp 0x4118d3
lea ecx, [ebp - 0x14]
push ecx
push 0x6d3e30
push 1
push ebx
push 0x6d3f00
mov dword [ebp - 0x14], ebx
call dword [sym.imp.ole32.dll_CoCreateInstance]
jmp 0x411953
cmp eax, ebx
jge 0x4119d3
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edi, 0x10
cmp dword [ebp + 0xa4], edi
jb 0x411979
mov edx, dword [ebp + 0x90]
push edx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0xa4], esi
mov dword [ebp + 0xa0], ebx
mov byte [ebp + 0x90], bl
cmp dword [ebp + 0xc0], edi
jb 0x4119a2
mov eax, dword [ebp + 0xac]
push eax
call fcn.005bb180
add esp, 4
mov dword [ebp + 0xc0], esi
mov dword [ebp + 0xbc], ebx
mov byte [ebp + 0xac], bl
cmp dword [ebp + 0x88], edi
jb 0x4119c8
mov ecx, dword [ebp + 0x74]
push ecx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0x88], esi
jmp 0x414b7f
jmp 0x411a39
jmp 0x411a9f
mov dword [ebp - 0x10], ebx
jmp 0x411b08
mov ecx, 0x43e8b9ba
lea eax, [ebp - 0x50]
call 0x41abc0
lea edx, [ebp - 0x5c]
push edx
mov edi, eax
mov byte [ebp - 4], 4
call fcn.0040e3d0
mov byte [ebp - 4], 5
mov eax, dword [eax]
cmp eax, ebx
je 0x411b32
mov ecx, dword [eax]
jmp 0x411b34
xor ecx, ecx
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
lea esi, [ebp - 0x10]
push esi
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ecx
push eax
mov eax, dword [edx + 0xc]
call eax
lea edi, [ebp - 0x5c]
mov esi, eax
call fcn.0040e470
mov byte [ebp - 4], 3
jmp 0x411bbe
cmp esi, ebx
jge 0x411bd8
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x41420b
jmp 0x411c3e
jmp 0x411ca4
mov eax, dword [ebp - 0x10]
push ebx
push ebx
push 3
push 3
push ebx
push ebx
push 0xa
push eax
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
jmp 0x411d1e
cmp eax, ebx
jge 0x411d61
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp + 0x8c]
call fcn.00407440
lea ecx, [ebp + 0xa8]
call fcn.00407440
lea ecx, [ebp + 0x70]
call fcn.00407440
jmp 0x414b88
jmp 0x411dc7
mov edi, 0x75b5dc4
lea esi, [ebp - 0x8a]
mov dword [ebp - 0x1c], ebx
call fcn.0041ac70
push eax
lea ebx, [ebp - 0x64]
mov byte [ebp - 4], 6
call fcn.0040e340
mov esi, eax
mov ecx, 0xa1
xor eax, eax
mov dl, byte [eax + 0x6e107c]
xor dl, cl
inc ecx
and ecx, 0x800000ff
mov byte [ebp + eax - 0x5c], dl
jns 0x411e0d
dec ecx
or ecx, 0xffffff00
inc ecx
inc eax
cmp eax, 3
jl 0x411df0
mov byte [ebp - 0x59], 0
lea eax, [ebp - 0x5c]
push eax
lea ebx, [ebp - 0x6c]
mov byte [ebp - 4], 8
call fcn.0040e340
mov byte [ebp - 4], 9
mov ecx, dword [esi]
test ecx, ecx
je 0x411e35
mov ecx, dword [ecx]
jmp 0x411e37
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x411e41
mov edx, dword [eax]
jmp 0x411e43
xor edx, edx
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
lea edi, [ebp - 0x1c]
push edi
push 0
push 0x30
push ecx
mov ecx, dword [esi + 0x50]
push edx
push eax
call ecx
lea edi, [ebp - 0x6c]
mov esi, eax
call fcn.0040e470
lea edi, [ebp - 0x64]
mov dword [ebp - 0x5c], 0
call fcn.0040e470
mov bl, 3
mov byte [ebp - 4], bl
jmp 0x411edc
xor ecx, ecx
cmp esi, ecx
jge 0x411f21
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp + 0x8c]
call fcn.00407440
lea ecx, [ebp + 0xa8]
call fcn.00407440
lea ecx, [ebp + 0x70]
call fcn.00407440
jmp 0x414b88
jmp 0x411f87
mov dword [ebp - 0x18], ecx
jmp 0x411ff0
mov dword [ebp - 0x20], ecx
jmp 0x412059
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
je 0x41261c
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
lea edx, [ebp - 0x18]
push edx
push 1
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
jmp 0x4120de
cmp dword [ebp - 0x20], 0
je 0x41261c
jmp 0x41214e
jmp 0x4121b4
mov ecx, 0x6e1080
sub ecx, 0x7e1ae418
push ecx
lea eax, [ebp - 0x88]
call fcn.0041acb0
push 0
push 0
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea esi, [ebp - 0x4c]
push esi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x4122e3
mov ax, word [ebp - 0x4c]
cmp ax, 1
je 0x4122e3
test ax, ax
je 0x4122e3
jmp 0x41226d
mov ecx, dword [ebp - 0x44]
push ecx
lea edx, [ebp + 0xc4]
push 0x6e0aa0
push edx
call fcn.005df599
add esp, 0xc
lea eax, [ebp + 0xc4]
push eax
lea ecx, [ebp]
call fcn.00407400
push 0xffffffffffffffff
push 0
lea ecx, [ebp]
push ecx
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0xb
call fcn.0040eef0
push 0xffffffffffffffff
push 0
lea edx, [ebp]
push edx
lea ecx, [ebp + 0xa8]
call fcn.0040eef0
push 0xffffffffffffffff
push 0
lea eax, [ebp]
push eax
lea ecx, [ebp + 0x8c]
call fcn.0040eef0
mov ecx, esi
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push ecx
call esi
lea ecx, [ebp]
call fcn.00407440
jmp 0x4122e9
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x41234f
jmp 0x4123b5
mov edx, 0x6e109c
sub edx, 0x278cbf8a
push edx
lea eax, [ebp - 0x90]
call fcn.0041ad00
push 0
push 0
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x412476
cmp word [ebp - 0x4c], 8
jne 0x412476
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0xd
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0xe
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0xf
call fcn.0040eef0
lea ecx, [ebp]
call fcn.00407440
lea ecx, [ebp - 0x4c]
push ecx
call esi
jmp 0x4124dc
mov ecx, 0x6e10c0
sub ecx, 0x3a66cc02
lea eax, [ebp + 0xa]
call 0x41ad50
push 0
push 0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x4125a0
cmp word [ebp - 0x4c], 8
jne 0x4125a0
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0x11
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x12
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x13
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
lea ecx, [ebp - 0x4c]
push ecx
call esi
jmp 0x412606
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x412064
jmp 0x412682
mov edi, 0x56c600f9
lea esi, [ebp - 0x90]
call fcn.0041ae10
push eax
lea ebx, [ebp - 0x58]
mov byte [ebp - 4], 0x14
call fcn.0040e340
mov esi, eax
mov ecx, 0x6e10f8
sub ecx, 0x127b1479
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x5c], ecx
call fcn.0041ade0
push eax
lea ebx, [ebp - 0x64]
mov byte [ebp - 4], 0x16
call fcn.0040e340
mov byte [ebp - 4], 0x17
mov ecx, dword [esi]
test ecx, ecx
je 0x4126d2
mov ecx, dword [ecx]
jmp 0x4126d4
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x4126de
mov edx, dword [eax]
jmp 0x4126e0
xor edx, edx
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
lea edi, [ebp - 0x1c]
push edi
push 0
push 0x30
push ecx
mov ecx, dword [esi + 0x50]
push edx
push eax
call ecx
lea edi, [ebp - 0x64]
mov esi, eax
call fcn.0040e470
lea edi, [ebp - 0x58]
mov dword [ebp - 0x6c], 0
call fcn.0040e470
mov bl, 3
mov byte [ebp - 4], bl
jmp 0x412779
test esi, esi
jl 0x411ee2
jmp 0x4127e7
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x412ca8
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
lea edx, [ebp - 0x18]
push edx
push 1
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
cmp dword [ebp - 0x20], 0
je 0x412ca8
jmp 0x412876
mov ecx, 0x498b29b4
lea eax, [ebp + 6]
call fcn.0041ae50
push 0
push 0
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea esi, [ebp - 0x4c]
push esi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x412906
mov ax, word [ebp - 0x4c]
cmp ax, 1
je 0x412906
test ax, ax
je 0x412906
mov ecx, dword [ebp - 0x44]
push ecx
lea edx, [ebp + 0xc4]
push 0x6d49f8
push edx
call fcn.005df599
add esp, 0xc
lea eax, [ebp + 0xc4]
push eax
lea ecx, [ebp]
call fcn.00407400
push 0xffffffffffffffff
push 0
lea ecx, [ebp]
push ecx
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x19
call fcn.0040eef0
mov edx, esi
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push edx
call esi
lea ecx, [ebp]
call fcn.00407440
jmp 0x41290c
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x412972
mov eax, 0x6e1114
sub eax, 0x73407540
push eax
lea eax, [ebp - 0x8a]
call fcn.0041af00
push 0
push 0
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x412a32
cmp word [ebp - 0x4c], 8
jne 0x412a32
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0x1b
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x1c
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x1d
call fcn.0040eef0
lea ecx, [ebp]
call fcn.00407440
lea ecx, [ebp - 0x4c]
push ecx
call esi
jmp 0x412a98
jmp 0x412afe
jmp 0x412b64
mov edx, 0x6e1134
sub edx, 0x78dc1078
push edx
lea eax, [ebp - 0x8a]
call fcn.0041af50
push 0
push 0
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x412c2c
cmp word [ebp - 0x4c], 8
jne 0x412c2c
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0x1f
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x20
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x21
call fcn.0040eef0
lea ecx, [ebp]
mov byte [ebp - 4], bl
call fcn.00407440
lea ecx, [ebp - 0x4c]
push ecx
call esi
jmp 0x412c92
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x4127f2
jmp 0x412d0e
mov edi, 0x700fb529
lea esi, [ebp - 0x8a]
call 0x41afa0
push eax
lea ebx, [ebp - 0x6c]
mov byte [ebp - 4], 0x22
call fcn.0040e340
mov esi, eax
mov ecx, dword [ebp - 0x5c]
lea eax, [ebp - 0x62]
call fcn.0041ade0
push eax
lea ebx, [ebp - 0x58]
mov byte [ebp - 4], 0x24
call fcn.0040e340
mov byte [ebp - 4], 0x25
mov ecx, dword [esi]
test ecx, ecx
je 0x412d53
mov ecx, dword [ecx]
jmp 0x412d55
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x412d5f
mov edx, dword [eax]
jmp 0x412d61
xor edx, edx
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
lea edi, [ebp - 0x1c]
push edi
push 0
push 0x30
push ecx
mov ecx, dword [esi + 0x50]
push edx
push eax
call ecx
lea edi, [ebp - 0x58]
mov esi, eax
call fcn.0040e470
lea edi, [ebp - 0x6c]
mov dword [ebp - 0x62], 0
call fcn.0040e470
mov bl, 3
mov byte [ebp - 4], bl
jmp 0x412dfa
test esi, esi
jl 0x411ee2
jmp 0x412e68
jmp 0x412ece
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x41362d
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
lea edx, [ebp - 0x18]
push edx
push 1
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
jmp 0x412f53
cmp dword [ebp - 0x20], 0
je 0x41362d
jmp 0x412fc3
jmp 0x413029
mov ecx, 0xec9c6c8
lea eax, [ebp + 0x10]
call fcn.0041afe0
push 0
push 0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea esi, [ebp - 0x4c]
push esi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
xor ecx, ecx
movzx edx, cx
mov ecx, edx
shl edx, 0x10
or ecx, edx
mov byte [ebp - 4], bl
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], ecx
mov dword [ebp + 0x18], ecx
test eax, eax
jne 0x41314b
cmp word [ebp - 0x4c], 8
jne 0x41314b
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x27
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x28
call fcn.0040eef0
lea ecx, [ebp - 0x88]
call fcn.00407440
jmp 0x41313e
mov eax, esi
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call esi
jmp 0x413151
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x4131b7
push 0x5b946e46
lea eax, [ebp - 0x88]
call fcn.0041b040
push 0
push 0
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
test eax, eax
jne 0x413252
cmp word [ebp - 0x4c], 8
jne 0x413252
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x2a
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x2b
call fcn.0040eef0
lea ecx, [ebp - 0x88]
call fcn.00407440
lea ecx, [ebp - 0x4c]
push ecx
call esi
jmp 0x4132b8
mov edx, 0x6e119c
sub edx, 0x4e801ce8
push edx
lea eax, [ebp - 0x8e]
call fcn.0041b090
push 0
push 0
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
jmp 0x413352
test eax, eax
jne 0x413494
cmp word [ebp - 0x4c], 8
jne 0x413494
jmp 0x4133cb
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x2d
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
jmp 0x413461
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x2e
call fcn.0040eef0
lea ecx, [ebp - 0x88]
call fcn.00407440
lea ecx, [ebp - 0x4c]
push ecx
call esi
jmp 0x4134fa
mov ecx, 0x6e11c0
sub ecx, 0x7fb01ae4
lea eax, [ebp - 0x68]
call fcn.0041b0e0
push 0
push 0
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp - 0x4c]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
xor ecx, ecx
movzx edx, cx
mov ecx, edx
shl edx, 0x10
or ecx, edx
mov byte [ebp - 4], bl
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x64], ecx
mov word [ebp - 0x60], cx
test eax, eax
jne 0x4135b1
cmp word [ebp - 0x4c], 8
jne 0x4135b1
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x30
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
mov edi, dword [ebp - 0x44]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x31
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
lea eax, [ebp - 0x4c]
push eax
call esi
jmp 0x413617
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x412ed9
jmp 0x413693
mov edi, 0x2e05a731
lea esi, [ebp - 0x8f]
call 0x41b130
push eax
lea ebx, [ebp - 0x6c]
mov byte [ebp - 4], 0x32
call fcn.0040e340
mov esi, eax
mov ecx, dword [ebp - 0x5c]
lea eax, [ebp - 0x62]
call fcn.0041ade0
push eax
lea ebx, [ebp - 0x58]
mov byte [ebp - 4], 0x34
call fcn.0040e340
mov byte [ebp - 4], 0x35
mov ecx, dword [esi]
test ecx, ecx
je 0x4136d8
mov ecx, dword [ecx]
jmp 0x4136da
xor ecx, ecx
mov eax, dword [eax]
test eax, eax
je 0x4136e4
mov edx, dword [eax]
jmp 0x4136e6
xor edx, edx
mov eax, dword [ebp - 0x10]
mov esi, dword [eax]
lea edi, [ebp - 0x1c]
push edi
push 0
push 0x30
push ecx
push edx
push eax
mov eax, dword [esi + 0x50]
call eax
lea edi, [ebp - 0x58]
mov esi, eax
call fcn.0040e470
lea edi, [ebp - 0x6c]
mov dword [ebp - 0x62], 0
call fcn.0040e470
mov bl, 3
mov byte [ebp - 4], bl
jmp 0x41377f
test esi, esi
jge 0x4138da
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x4137f8
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x413869
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x4138d5
jmp 0x411d3e
jmp 0x413940
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x414201
jmp 0x413950
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
lea edx, [ebp - 0x18]
push edx
push 1
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
jmp 0x4139ca
cmp dword [ebp - 0x20], 0
je 0x4141fe
jmp 0x413a3a
jmp 0x413aa0
mov ecx, 0x943b594
lea eax, [ebp - 0x4c]
call 0x41b170
push 0
push 0
mov byte [ebp - 4], 0x36
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea esi, [ebp + 0xc]
push esi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
mov esi, 8
test eax, eax
jne 0x413ca7
cmp word [ebp + 0xc], si
jne 0x413ca7
jmp 0x413b47
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0x37
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
jmp 0x413bda
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x38
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
jmp 0x413c70
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x8c]
mov byte [ebp - 4], 0x39
call fcn.0040eef0
lea ecx, [ebp - 0x88]
call fcn.00407440
lea ecx, [ebp + 0xc]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x413d0d
push 0x39408544
lea eax, [ebp - 0x54]
call fcn.0041b1f0
push 0
push 0
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp + 0xc]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
jmp 0x413d9d
test eax, eax
jne 0x413f45
cmp word [ebp + 0xc], si
jne 0x413f45
jmp 0x413e15
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0x3b
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
jmp 0x413ea8
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x3c
call fcn.0040eef0
lea ecx, [ebp - 0x88]
call fcn.00407440
jmp 0x413f3b
lea ecx, [ebp + 0xc]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x413fab
push 0x4cbd97a0
lea eax, [ebp - 0x54]
call fcn.0041b240
push 0
push 0
mov byte [ebp - 4], 0x3d
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
lea edi, [ebp + 0xc]
push edi
push 0
push eax
mov eax, dword [edx + 0x10]
push ecx
call eax
mov byte [ebp - 4], bl
jmp 0x41403b
test eax, eax
jne 0x414180
cmp word [ebp + 0xc], si
jne 0x414180
jmp 0x4140b3
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 0x3e
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
jmp 0x414146
mov edi, dword [ebp + 0x14]
lea ecx, [ebp - 0x88]
call fcn.004112a0
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp + 0xa8]
mov byte [ebp - 4], 0x3f
call fcn.0040eef0
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], bl
call fcn.00407440
lea ecx, [ebp + 0xc]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x4141e6
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x413950
jmp 0x414201
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
xor ebx, ebx
jmp 0x414271
mov edi, 0x6e103c
sub edi, 0x99cc67
mov ecx, edi
lea eax, [ebp - 0x66]
call fcn.0041aaa0
push eax
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0x40
call fcn.00407400
mov byte [ebp - 4], 0x42
xor eax, eax
mov dword [ebp - 0x66], eax
mov dword [ebp - 0x62], eax
cmp dword [ebp + 0x84], ebx
jbe 0x4142e2
sub esp, 0x1c
lea eax, [ebp + 0x70]
mov ecx, esp
mov dword [ebp - 0x58], esp
push eax
call fcn.0040d7d0
lea ecx, [ebp - 0x88]
push ecx
call fcn.0041c1d0
add esp, 0x20
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0x43
call fcn.00407040
lea ecx, [ebp - 0x88]
call fcn.00407440
jmp 0x414348
mov ecx, edi
lea eax, [ebp - 0x66]
call fcn.0041aaa0
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x44
call fcn.00407400
mov byte [ebp - 4], 0x46
xor eax, eax
mov dword [ebp - 0x66], eax
mov dword [ebp - 0x62], eax
cmp dword [ebp + 0xbc], ebx
jbe 0x4143b1
sub esp, 0x1c
lea edx, [ebp + 0xa8]
mov ecx, esp
mov dword [ebp - 0x58], esp
push edx
call fcn.0040d7d0
lea eax, [ebp - 0x88]
push eax
call fcn.0041c1d0
add esp, 0x20
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x54]
mov byte [ebp - 4], 0x47
call fcn.00407040
lea ecx, [ebp - 0x88]
call fcn.00407440
jmp 0x414417
jmp 0x41447d
jmp 0x4144e3
jmp 0x414549
jmp 0x4145af
mov ecx, edi
lea eax, [ebp - 0x66]
call fcn.0041aaa0
push eax
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x48
call fcn.00407400
mov byte [ebp - 4], 0x4a
xor eax, eax
mov dword [ebp - 0x66], eax
mov dword [ebp - 0x62], eax
cmp dword [ebp + 0xa0], ebx
jbe 0x41461c
sub esp, 0x1c
lea edx, [ebp + 0x8c]
mov ecx, esp
mov dword [ebp - 0x58], esp
push edx
call fcn.0040d7d0
lea eax, [ebp - 0x88]
push eax
call fcn.0041c1d0
add esp, 0x20
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x4b
call fcn.00407040
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x4a
call fcn.00407440
jmp 0x414682
push 0x41
push ebx
push 0x8f7f34
call fcn.005e3040
add esp, 0xc
jmp 0x4146f8
push 0x41
push ebx
push 0x8f7f75
call fcn.005e3040
add esp, 0xc
jmp 0x41476e
push 0x41
push ebx
push 0x8f7fb6
call fcn.005e3040
add esp, 0xc
jmp 0x4147e4
mov eax, dword [ebp + 0x20]
mov esi, 0x10
cmp dword [ebp + 0x34], esi
jae 0x4147f4
lea eax, [ebp + 0x20]
mov ecx, dword [ebp + 0x30]
push ecx
push eax
push 0x8f7f34
call fcn.005e30c0
add esp, 0xc
jmp 0x41486c
mov eax, dword [ebp + 0x58]
cmp dword [ebp + 0x6c], esi
jae 0x414877
lea eax, [ebp + 0x58]
mov edx, dword [ebp + 0x68]
push edx
push eax
push 0x8f7f75
call fcn.005e30c0
add esp, 0xc
jmp 0x4148ef
mov eax, dword [ebp + 0x3c]
cmp dword [ebp + 0x50], esi
jae 0x4148fa
lea eax, [ebp + 0x3c]
mov ecx, dword [ebp + 0x4c]
push ecx
push eax
push 0x8f7fb6
call fcn.005e30c0
add esp, 0xc
jmp 0x414972
mov eax, dword [ebp - 0x10]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x4149e3
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x414a54
call dword [sym.imp.ole32.dll_CoUninitialize]
jmp 0x414ac0
cmp dword [ebp + 0x50], esi
jb 0x414ad1
mov eax, dword [ebp + 0x3c]
push eax
call fcn.005bb180
add esp, 4
mov edi, 0xf
mov dword [ebp + 0x50], edi
mov dword [ebp + 0x4c], ebx
mov byte [ebp + 0x3c], bl
cmp dword [ebp + 0x6c], esi
jb 0x414af0
mov ecx, dword [ebp + 0x58]
push ecx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0x6c], edi
mov dword [ebp + 0x68], ebx
mov byte [ebp + 0x58], bl
cmp dword [ebp + 0x34], esi
jb 0x414b0a
mov edx, dword [ebp + 0x20]
push edx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0x34], edi
mov dword [ebp + 0x30], ebx
mov byte [ebp + 0x20], bl
cmp dword [ebp + 0xa4], esi
jb 0x414b2a
mov eax, dword [ebp + 0x90]
push eax
call fcn.005bb180
add esp, 4
mov dword [ebp + 0xa4], edi
mov dword [ebp + 0xa0], ebx
mov byte [ebp + 0x90], bl
cmp dword [ebp + 0xc0], esi
jb 0x414b53
mov ecx, dword [ebp + 0xac]
push ecx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0xc0], edi
mov dword [ebp + 0xbc], ebx
mov byte [ebp + 0xac], bl
cmp dword [ebp + 0x88], esi
jb 0x414b79
mov edx, dword [ebp + 0x74]
push edx
call fcn.005bb180
add esp, 4
mov dword [ebp + 0x88], edi
mov dword [ebp + 0x84], ebx
mov byte [ebp + 0x74], bl
lea esi, [ebp - 0x38]
call fcn.00418e10
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x144]
xor ecx, ebp
call fcn.005dee98
add ebp, 0x148
mov esp, ebp
pop ebp
ret