Function at 0x43be60
Capabilities:
Connect to wmi namespace via wbemlocator
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov edi, dword [ebp + 8]
mov eax, dword [0x451e44]
mov dword [esp + 4], 0x17791945
mov dword [esp + 8], 0x139d159d
mov dword [esp + 0xc], 0xf93119c
mov dword [esp + 0x10], 0xb760d99
mov dword [esp + 0x14], 0x79f0986
mov dword [esp + 0x18], 0x39f058e
mov dword [esp + 0x1c], 0x3f3e015d
mov dword [esp + 0x20], 0
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
mov edx, ecx
add dl, 6
xor dl, byte [esp + ecx + 4]
add dl, 0xe2
mov byte [esp + ecx + 4], dl
inc ecx
cmp ecx, 0x20
jne case.default.0x43bef3
lea ecx, [esp + 0x54]
lea esi, [esp + 0x84]
lea edx, [esp + 4]
push ecx
push 8
push esi
push 0xd
push edx
push 0
call eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f2f4]
mov dword [esp + 0x84], 0x3a0043
mov dword [esp + 0x88], 0x5c
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x40], 0
lea eax, [esp + 0x40]
push eax
push 0x448a98
push 1
push 0
push 0x448aa8
call dword [sym.imp.ole32.dll_CoCreateInstance]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f2fc]
jmp dword [0x44f308]
mov dword [esp + 4], 0xb7458976
mov dword [esp + 8], 0xb34eb547
mov dword [esp + 0xc], 0xbf71b154
mov dword [esp + 0x10], 0xbb4fbd75
mov dword [esp + 0x14], 0xa778b942
mov word [esp + 0x18], 0xa5a4
mov dword [esp + 0x1a], 0
mov word [esp + 0x1e], 0
mov eax, 0xf9c7b8de
mov ecx, 0x21
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0x6384726]
mov edx, ecx
xor edx, eax
and edx, esi
xor edx, eax
mov esi, edx
xor esi, 0xe0e69c57
and edx, 0x190120a8
add edx, edx
sub edx, esi
lea ebx, [edx + edx]
and ebx, 2
mov esi, ebx
and esi, edx
or ebx, edx
xor ebx, 1
add ebx, esi
mov byte [esp + eax + 0x6384726], bl
inc eax
dec ecx
cmp eax, 0xf9c7b8fa
jne 0x43bfb0
lea eax, [esp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
nop
nop
mov dword [esp + 4], 0xb7458976
mov dword [esp + 8], 0xb34eb547
mov dword [esp + 0xc], 0xbf71b154
mov dword [esp + 0x10], 0xbb4fbd75
mov dword [esp + 0x14], 0xa778b942
mov word [esp + 0x18], 0xa5a4
mov dword [esp + 0x1a], 0
mov word [esp + 0x1e], 0
mov eax, 0xf9c7b8de
mov ecx, 0x21
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax + 0x6384726]
mov edx, ecx
xor edx, eax
and edx, esi
xor edx, eax
mov esi, edx
xor esi, 0xe0e69c57
and edx, 0x190120a8
add edx, edx
sub edx, esi
lea ebx, [edx + edx]
and ebx, 2
mov esi, ebx
and esi, edx
or ebx, edx
xor ebx, 1
add ebx, esi
mov byte [esp + eax + 0x6384726], bl
inc eax
dec ecx
cmp eax, 0xf9c7b8fa
jne 0x43c050
lea eax, [esp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
jmp dword [0x44f30c]
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
lea esi, [esp + 0x3c]
push esi
push 0
push 0
push 0
push 0
push 0
push 0
mov dword [esp + 0x88], eax
push eax
push ecx
call dword [edx + 0xc]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f324]
jmp dword [0x44f32c]
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f33c]
mov dword [esp + 4], 0x693d6b3d
mov dword [esp + 8], 0x6d6e6f24
mov word [esp + 0xc], 0
mov byte [esp + 0xe], 0
mov eax, 0x67
mov ecx, 0x98
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax - 0x63]
mov edx, ecx
xor edx, eax
and edx, esi
xor edx, eax
add dl, 0xfd
mov byte [esp + eax - 0x63], dl
inc eax
dec ecx
cmp eax, 0x72
jne 0x43c110
lea eax, [esp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esp + 0x44], eax
mov dword [esp + 4], 0x39f13b81
mov dword [esp + 8], 0x25ed278c
mov dword [esp + 0xc], 0x219e23e9
mov dword [esp + 0x10], 0x2df82fc0
mov dword [esp + 0x14], 0x29e02bcc
mov dword [esp + 0x18], 0x15a71796
mov dword [esp + 0x1c], 0x11f213a7
mov dword [esp + 0x20], 0x1d891fa9
mov dword [esp + 0x24], 0x19c71b8e
mov dword [esp + 0x28], 0x5a707c6
mov dword [esp + 0x2c], 0x1b503ca
mov dword [esp + 0x30], 0xdb30fb1
mov dword [esp + 0x34], 0xb0c
mov byte [esp + 0x38], 0
mov eax, 0xcb
mov ecx, 0x37a97934
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax - 0xc7]
mov esi, eax
xor esi, ecx
and esi, edx
xor esi, ecx
mov edx, 2
sub edx, esi
sub edx, esi
mov ebx, 1
sub ebx, esi
and esi, 0x37a979fe
mov edi, 0x164f5e07
sub edi, esi
and edx, 2
not ebx
or ebx, 0xfe
and ebx, edi
and edi, edx
xor ebx, edx
lea edx, [ebx + edi*2]
mov byte [esp + eax - 0xc7], dl
inc eax
dec ecx
cmp eax, 0x100
jne case.default.0x43c23f
lea eax, [esp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax]
lea edx, [esp + 0x50]
push edx
push 0
push 0x30
push esi
mov ebx, dword [esp + 0x54]
push ebx
push eax
call dword [ecx + 0x50]
not eax
shr eax, 0x1f
mov edi, dword [ebp + 8]
jmp dword [eax*4 + 0x44f344]
mov dword [esp + 0x68], esi
mov dword [esp + 0x48], 0
mov eax, dword [esp + 0x50]
mov ecx, dword [eax]
lea edx, [esp + 0x48]
lea esi, [esp + 0x4c]
push edx
push esi
push 1
push 0xffffffffffffffff
push eax
call dword [ecx + 0x10]
test eax, eax
setns cl
cmp eax, 1
setne al
cmp dword [esp + 0x48], 0
setne dl
and dl, al
and dl, cl
movzx eax, dl
jmp dword [eax*4 + 0x44f34c]
lea eax, [esp + 0x70]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x64], eax
mov dword [esp + 4], 0x31593f69
mov dword [esp + 8], 0x35493342
mov dword [esp + 0xc], 0x494a3757
mov dword [esp + 0x10], 0x4d3d4b16
mov dword [esp + 0x14], 0x412c4f33
mov dword [esp + 0x18], 0x45304327
mov word [esp + 0x1c], 0x4744
mov dword [esp + 0x1e], 0
mov byte [esp + 0x22], 0
mov esi, 0x35
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [esp + esi - 0x31]
mov edx, ebx
not edx
or edx, esi
add edx, ebx
inc dl
mov eax, edx
or al, 0xfd
inc al
mov ecx, edx
and cl, 0xfd
mul cl
mov ecx, eax
add cl, bl
mov eax, edx
shr al, 1
and al, 1
or dl, 2
mul dl
add al, al
sub cl, al
movzx eax, cl
add eax, esi
add al, 0xf7
mov byte [esp + esi - 0x31], al
inc esi
cmp esi, 0x54
jne case.default.0x43c35d
mov edx, dword [esp + 0x64]
mov eax, dword [edx]
push 0
push 0
lea ecx, [esp + 0x78]
push ecx
push 0
lea ecx, [esp + 0x14]
push ecx
push edx
call dword [eax + 0x10]
cmp word [esp + 0x70], 8
sete cl
test eax, eax
setns al
and al, cl
movzx eax, al
jmp dword [eax*4 + 0x44f354]
push dword [esp + 0x78]
call fcn.00432b70
add esp, 4
mov esi, eax
lea ebx, [eax + 1]
push ebx
call fcn.0040ce10
add esp, 4
push dword [esp + 0x78]
push ebx
mov ebx, eax
push eax
call fcn.0042adb0
add esp, 0xc
add esi, 0xfffffffc
xor eax, eax
xor ecx, ecx
cmp eax, 4
setb cl
jmp dword [ecx*4 + 0x44f35c]
mov ecx, eax
and ecx, 4
mov edx, eax
or edx, 4
imul edx, ecx
xor ecx, 4
mov edi, eax
and edi, 0xfffffffb
imul edi, ecx
add edx, ebx
mov ecx, dword [edi + edx]
mov dword [esp + eax*4 + 0x54], ecx
xor ecx, ecx
sub esi, 4
setb cl
jmp dword [ecx*4 + 0x44f364]
inc eax
xor ecx, ecx
cmp eax, 4
setb cl
jmp dword [ecx*4 + 0x44f35c]
mov edi, dword [ebp + 8]
jmp dword [0x44f37c]
push ebx
call fcn.0040ce20
add esp, 4
lea eax, [esp + 0x70]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ebx, dword [esp + 0x44]
mov eax, dword [esp + 0x50]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, dword [esp + 0x68]
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [esp + 0x6c]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea esi, [esp + 0x84]
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [esp + 4], 0
push 0x72a7c387
push dword [0x451e3c]
call fcn.00444590
add esp, 8
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x14]
push ecx
push 0
push 0
push esi
call eax
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44f394]
mov eax, dword [esp + 4]
mov dword [esp + 0x54], eax
xor esi, esi
xor eax, eax
cmp esi, 4
setb al
jmp dword [eax*4 + 0x44f39c]
xor ecx, ecx
test esi, esi
setne cl
mov eax, esi
jmp dword [ecx*4 + 0x44f3a4]
jmp dword [0x44f3b8]
xor ecx, ecx
cmp dword [esp + esi*4 + 0x54], 0
sete cl
mov eax, esi
jmp dword [ecx*4 + 0x44f3bc]
lea eax, [esi - 1]
imul eax, dword [esp + eax*4 + 0x54], 0x1a5845
add eax, 0xebde8a13
mov dword [esp + esi*4 + 0x54], eax
push 0x10
push 9
push edi
push eax
call fcn.00422f90
add esp, 0x10
lea ecx, [eax - 1]
mov edx, eax
inc ecx
cmp byte [edx], 0
lea edx, [edx + 1]
jne case.default.0x43c530
mov edx, eax
not edx
and edx, ecx
xor ecx, eax
add edx, edx
sub ecx, edx
add ecx, 8
xor edx, edx
add ecx, 0xffffffff
setb dl
jmp dword [edx*4 + 0x44f3c4]
mov byte [eax - 1], 0x30
dec eax
xor edx, edx
add ecx, 0xffffffff
setb dl
jmp dword [edx*4 + 0x44f3c4]
jmp dword [0x44f3d8]
add edi, 8
inc esi
xor eax, eax
cmp esi, 4
setb al
jmp dword [eax*4 + 0x44f39c]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x58]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [esp + 0x58]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
jmp dword [0x44f338]
int3
xor eax, eax
jmp 0x43c862
push 0x400
call fcn.0043e5b0
add esp, 4
mov esi, eax
mov edi, dword [esp + 0x14]
jmp dword [0x44f3e4]
mov dword [esp], 0x60676665
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xe9
xor cl, byte [esp + eax]
add cl, 0x73
mov byte [esp + eax], cl
inc eax
cmp eax, 4
jne 0x43c620
mov eax, dword [0x451e48]
test eax, eax
je case.0x43c35d.35
mov ecx, dword [esp]
xor edx, edx
mov ebx, dword [0x451e4c]
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edx*8], 0x7cde1e50
je 0x43c660
inc edx
cmp eax, edx
jne 0x43c650
jmp case.0x43c35d.35
mov eax, dword [ebx + edx*8 + 4]
cmp eax, ecx
je case.0x43c35d.35
lea ecx, [esp + 0x18]
push 0x2f
push 0x400
push esi
push ecx
push edi
push 5
push eax
push dword [0x451e50]
call fcn.00441a80
add esp, 0x20
jmp case.0x43c35d.35
jmp dword [0x44f3ec]
mov dword [esp], 0x60676665
xor eax, eax
nop
mov ecx, eax
add cl, 0xe9
xor cl, byte [esp + eax]
add cl, 0x73
mov byte [esp + eax], cl
inc eax
cmp eax, 4
jne 0x43c6a0
mov eax, dword [esp]
mov ecx, dword [0x451e48]
test ecx, ecx
je 0x43c690
xor edx, edx
mov ebx, dword [0x451e4c]
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edx*8], 0x7cde1e50
je 0x43c6e0
inc edx
cmp ecx, edx
jne 0x43c6d0
jmp 0x43c690
mov ecx, dword [ebx + edx*8 + 4]
cmp ecx, eax
je 0x43c690
lea eax, [esp + 0x18]
push 0x2f
push 0x400
push esi
push eax
push edi
push 5
push ecx
push dword [0x451e50]
call fcn.00441a80
add esp, 0x20
jmp dword [0x44f3ec]
not eax
shr eax, 0x1f
xor ebx, ebx
mov dword [esp + 0x10], 0
jmp dword [eax*4 + 0x44f3f4]
push esi
call fcn.0043e640
add esp, 4
mov eax, dword [esp + 0x14]
mov dword [esp], 0x60676665
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, ebx
add cl, 0xe9
xor cl, byte [esp + ebx]
add cl, 0x73
mov byte [esp + ebx], cl
inc ebx
cmp ebx, 4
jne 0x43c740
mov ecx, dword [0x451e48]
test ecx, ecx
je 0x43c85c
mov edx, dword [esp]
xor esi, esi
mov edi, dword [0x451e4c]
nop
nop
nop
cmp dword [edi + esi*8], 0xb62b8d10
je 0x43c842
inc esi
cmp ecx, esi
jne 0x43c770
jmp 0x43c85c
xor eax, eax
cmp ebx, dword [esi]
setb al
xor ecx, ecx
mov dword [esp + 0x10], 0
jmp dword [eax*4 + 0x44f3fc]
mov ecx, esp
call fcn.0043eaa0
mov ecx, ebp
inc ecx
xor eax, eax
cmp ecx, dword [esi]
setb al
jmp dword [eax*4 + 0x44f3fc]
mov ebp, ecx
mov eax, dword [esi + ecx*4 + 4]
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
mov edi, esp
mov ecx, edi
push 0
push eax
call fcn.0043e920
xor eax, eax
mov ecx, dword [esp + 0x38]
neg ecx
sbb eax, dword [esp + 0x3c]
setl al
movzx eax, al
shl eax, 0x14
or eax, 1
mov ecx, edi
push eax
call fcn.0043e950
not eax
shr eax, 0x1f
jmp dword [eax*4 + 0x44f404]
mov ecx, esp
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push 0
call fcn.0043eb50
test eax, eax
setns al
mov dword [esp + 0x10], eax
mov eax, dword [case.0x43c35d.43]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
jmp eax
mov ecx, dword [edi + esi*8 + 4]
cmp ecx, edx
je 0x43c85c
push eax
push 1
push ecx
push dword [0x451e50]
call fcn.00441a80
add esp, 0x10
mov eax, dword [esp + 0x10]
and al, 1
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
ret
mov word [ebp], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
mov dword [esp], ebp
jmp dword [eax*4 + 0x44f424]
xor eax, eax
cmp word [ebp], 0
sete al
jmp dword [eax*4 + 0x44f524]
xor ecx, ecx
cmp word [ebp + 2], 0x3a
sete cl
mov al, 1
jmp dword [ecx*4 + 0x44f52c]
jmp dword [0x44f434]
xor eax, eax
test di, di
je 0x43cb60
mov esi, edi
mov ecx, ebx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp si, 0x5c
je 0x43cba0
movzx esi, word [ecx + 2]
add ecx, 2
test si, si
jne 0x43cb80
jmp 0x43cb60
mov eax, ecx
jmp dword [0x44f434]
xor ecx, ecx
test eax, eax
sete cl
mov esi, ebx
not esi
jmp dword [ecx*4 + 0x44f43c]
lea ecx, [eax + eax]
not ecx
add ecx, eax
and ecx, ebx
and esi, eax
xor eax, eax
sub esi, ecx
sete al
sar esi, 1
lea ebp, [esi + 1]
jmp dword [eax*4 + 0x44f444]
mov ecx, ebx
nop
nop
nop
nop
nop
nop
mov eax, ecx
add ecx, 2
cmp word [eax], 0
jne case.default.0x43cc02
lea ecx, [eax + eax]
not ecx
add ecx, eax
and ecx, ebx
and esi, eax
xor eax, eax
sub esi, ecx
sete al
sar esi, 1
lea ebp, [esi + 1]
jmp dword [eax*4 + 0x44f444]
xor eax, eax
cmp di, 0x5c
sete al
jmp dword [eax*4 + 0x44f45c]
xor eax, eax
cmp ebp, 2
sete al
jmp dword [eax*4 + 0x44f464]
xor eax, eax
cmp di, 0x2e
sete al
jmp dword [eax*4 + 0x44f46c]
xor eax, eax
cmp ebp, 3
sete al
jmp dword [eax*4 + 0x44f4c4]
xor eax, eax
cmp di, 0x2e
sete al
jmp dword [eax*4 + 0x44f4cc]
lea ecx, [ebx + 2]
xor eax, eax
cmp word [ecx], 0x2e
sete al
jmp dword [eax*4 + 0x44f4d4]
test ebp, ebp
je 0x43ccb8
mov ecx, ebp
and ecx, 3
mov eax, dword [esp]
mov dword [esp + 4], ebx
mov dword [esp + 0x14], esi
je 0x43cd1e
xor esi, esi
mov edi, ebx
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, word [edi]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [edi + ebx*2]
mov word [eax], dx
add eax, 2
inc esi
cmp ecx, esi
jne 0x43cc90
sub ebp, esi
mov ebx, dword [esp + 4]
mov esi, dword [esp + 0x14]
cmp esi, 3
jae 0x43cd25
mov eax, dword [esp]
jmp 0x43cd90
mov eax, dword [esp]
mov word [eax], 0x5c
add eax, 2
add ebx, 2
mov dword [esp], eax
mov word [eax], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
mov ebp, dword [esp + 0x30]
jmp dword [eax*4 + 0x44f424]
xor eax, eax
cmp word [ebx + 2], 0
sete al
jmp dword [eax*4 + 0x44f474]
add ebx, 4
mov eax, dword [esp]
mov word [eax], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
mov ebp, dword [esp + 0x30]
jmp dword [eax*4 + 0x44f424]
mov edi, ebx
cmp esi, 3
jb 0x43ccb8
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, word [edi]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [edi + ebx*2]
mov word [eax + ecx*2], dx
movzx edx, word [edi + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [esi + ebx*2]
mov word [eax + ecx*2 + 2], dx
movzx edx, word [esi + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea esi, [edi + ebx*2]
mov word [eax + ecx*2 + 4], dx
movzx edx, word [edi + ebx*2]
xor ebx, ebx
test dx, dx
setne bl
lea edi, [esi + ebx*2]
mov word [eax + ecx*2 + 6], dx
add ecx, 4
cmp ebp, ecx
jne case.default.0x43cdad
mov ebx, dword [esp + 4]
mov eax, dword [esp]
mov esi, dword [esp + 0x14]
lea eax, [eax + esi*2]
lea ebx, [ebx + esi*2]
mov dword [esp], eax
mov word [eax], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
mov ebp, dword [esp + 0x30]
jmp dword [eax*4 + 0x44f424]
add ebx, 2
xor eax, eax
mov ebp, dword [esp + 0x30]
mov edx, dword [esp]
cmp edx, ebp
seta al
jmp dword [eax*4 + 0x44f47c]
mov word [edx], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
jmp dword [eax*4 + 0x44f424]
jmp dword [0x44f48c]
movzx eax, word [ebp]
xor ecx, ecx
test ax, ax
sete cl
jmp dword [ecx*4 + 0x44f494]
mov dword [esp + 8], 0xb956bb4a
mov word [esp + 0xc], 0xbfb8
lea ecx, [esp + 0xe]
mov byte [ecx + 4], 0
mov dword [ecx], 0
mov ecx, 0x5f
nop
nop
nop
nop
nop
movzx edx, byte [esp + ecx - 0x57]
mov esi, ecx
and esi, edx
add esi, esi
sub edx, esi
add edx, ecx
add edx, 0xa03cfeba
mov esi, edx
and esi, 0x24
xor edx, 0x24
lea edx, [edx + esi*2]
add dl, 0x47
mov byte [esp + ecx - 0x57], dl
inc ecx
cmp ecx, 0x6a
jne 0x43ce30
xor ecx, ecx
nop
movzx esi, word [ebp + ecx + 2]
movzx edi, word [esp + ecx + 8]
test si, si
je 0x43ce77
add ecx, 2
cmp si, di
je 0x43ce60
xor ecx, ecx
cmp si, di
setne cl
mov edx, dword [esp]
jmp dword [ecx*4 + 0x44f49c]
jmp dword [0x44f4b0]
xor ecx, ecx
cmp ax, 0x5c
sete cl
jmp dword [ecx*4 + 0x44f4b4]
xor eax, eax
xor al, 1
movzx eax, al
jmp dword [eax*4 + 0x44f4bc]
add edx, 0xfffffffe
mov dword [esp], edx
mov word [edx], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
jmp dword [eax*4 + 0x44f424]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x30]
movzx edi, word [ebp]
xor eax, eax
test di, di
sete al
jmp dword [eax*4 + 0x44f4dc]
mov edx, ecx
mov dword [esp + 8], 0x892e8b4a
mov word [esp + 0xc], 0x8788
lea eax, [esp + 0xe]
mov word [eax + 4], 0
mov dword [eax], 0
xor ecx, ecx
nop
movzx ebx, byte [esp + ecx + 8]
mov eax, ecx
xor eax, 0x63b2671c
mov esi, ecx
or esi, 3
and esi, eax
add esi, esi
mov eax, ecx
xor eax, 0x9c4d98e3
mov ebp, esi
and ebp, eax
xor eax, esi
lea eax, [eax + ebp*2]
mov esi, ebx
and esi, eax
add esi, esi
sub eax, esi
add al, bl
add al, 0x91
mov byte [esp + ecx + 8], al
inc ecx
cmp ecx, 0xc
jne 0x43cf10
xor ecx, ecx
mov ebp, dword [esp + 0x30]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, word [ebp + ecx + 2]
movzx ebx, word [esp + ecx + 8]
test si, si
je 0x43cf77
add ecx, 2
cmp si, bx
je 0x43cf60
xor eax, eax
cmp si, bx
setne al
jmp dword [eax*4 + 0x44f4e4]
xor eax, eax
cmp di, 0x5c
sete al
jmp dword [eax*4 + 0x44f4ec]
xor eax, eax
xor al, 1
movzx eax, al
mov esi, dword [esp]
jmp dword [eax*4 + 0x44f4f4]
mov eax, dword [case.0x43cdad.59]
add esi, 0xfffffffe
xor ebx, ebx
cmp esi, ebp
setae bl
mov ecx, esi
mov esi, ebp
jmp dword [ebx*4 + 0x44f4fc]
mov eax, dword [case.0x43cdad.59]
mov ecx, dword [esp]
add ecx, 0xfffffffe
xor ebx, ebx
cmp ecx, ebp
setae bl
mov esi, ebp
jmp dword [ebx*4 + 0x44f4fc]
jmp eax
xor edx, edx
cmp word [ecx], 0x5c
sete dl
mov esi, ecx
jmp dword [edx*4 + 0x44f514]
add ecx, 0xfffffffe
xor ebx, ebx
cmp ecx, ebp
setae bl
mov esi, ebp
jmp dword [ebx*4 + 0x44f4fc]
mov ebx, dword [esp + 4]
add ebx, 4
mov dword [esp], esi
mov word [esi], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
jmp dword [eax*4 + 0x44f424]
add edx, 0xfffffffe
mov dword [esp], edx
mov word [edx], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
jmp dword [eax*4 + 0x44f424]
cmp word [ebp + 2], 0
sete al
xor al, 1
movzx eax, al
mov esi, dword [esp]
jmp dword [eax*4 + 0x44f4f4]
xor eax, eax
mov ecx, dword [esp + 4]
cmp word [ecx + 4], 0x5c
sete al
jmp dword [eax*4 + 0x44f51c]
mov ebx, edx
add ebx, 4
mov word [esi], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
jmp dword [eax*4 + 0x44f424]
cmp word [ebp + 2], 0
sete al
xor al, 1
movzx eax, al
jmp dword [eax*4 + 0x44f4bc]
mov word [edx], 0
movzx edi, word [ebx]
xor eax, eax
test di, di
setne al
jmp dword [eax*4 + 0x44f424]
mov dword [ebp], 0x5c
xor ecx, ecx
cmp word [ebp + 2], 0x3a
sete cl
mov al, 1
jmp dword [ecx*4 + 0x44f52c]
xor ecx, ecx
cmp word [ebp + 4], 0
sete cl
mov al, 1
jmp dword [ecx*4 + 0x44f554]
mov word [ebp + 4], 0x5c
mov word [ebp + 6], 0
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret
int3
mov edi, 0xbefa0043
inc ebx
add byte [esp + eax*8 + 0x43], bl
add byte [ebp - 0x41], bl
inc ebx
add byte [ebx - 0x41], ah
inc ebx
add byte [eax], al
rol byte [ebx], 0xa4
rol byte [ebx], 0
rol byte [ebx], 1
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [edi + 0x10043c5], dh
add byte [eax], al
add byte [ecx - 0x3c], al
inc ebx
add bl, dl
rol byte [ebx], 0x99
lds eax, [ebx]
add ebp, 0xc5810043
inc ebx
add cl, bl
rol byte [ebx], 0x37
les eax, [ebx]
in eax, 0xc0
inc ebx
add byte [ecx], ch
les eax, [ebx]
inc esi
ret 67
les eax, [ebx]
ret
retf