Function at 0x43b0c0
Capabilities:
Packed with generic packer

Disassembly:
push esp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3e5
cmp byte [ebp + 0x1c], 0
push ebx
push esi
push edi
mov edi, dword [ebp + 0x4c]
mov esp, ecx
sub al, 0x28
cmc
dec esp
stosd dword es:[edi], eax
or eax, 0x4a1324
push 1
bound eax, qword [eax]
push 0xfffffffffffffffe
push 0x4916f4
call fcn.004668b0
sub byte [edi], 0
push ebp
pop ss
mov eax, dword [0x6249d9c8]
mov dword [eax + 0x30], 0x5b
xor eax, eax
jg 0x43b165
push ebx
and ebp, 0x5d
ret 0x218
std
add eax, dword [eax]
lea edx, [esp + 0x400000fc]
add esp, 0x2c
xchg byte [esp + 0x400097], al
add dword [ebx - 0x5468d479], ecx
out dx, eax
mov ecx, dword [eax]
mov byte [edx + eax], cl
inc ecx
test cl, cl
jne 0x43b180
cmp byte [esp + 0x49], cl
je 0x43b202
push 8
lea esi, [esp + 0x3c]
add dword [esi + 0x24], 0x4c
call 0x4e3b10
add esp, 4
lodsd eax, dword [esi]
push esp
xor al, 0x20
ror byte [ebx - 0x6a02ef3a], cl
invalid
lea eax, [esp + 0x40c101e8]
push 0x5e
push eax
test al, 0xe6
leave
add dword [eax], eax
add esp, 8
movsd dword es:[edi], dword [esi]
sal byte [ebp + 0x19], 0xc6
inc eax
add dword [eax], eax
lea eax, [esp + 0x41e8]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jno 0x43b226
sub eax, edx
jmp 0x43b23b
lea ecx, [esp + eax + 0x204168]
mov dword [esi + eax + 0x1c], ebx
mov ecx, 0x40200103
lea edx, [ebp + 0x2f024]
add byte [ebx], ch
enter 0x5c6a, 0x52
mov dword [esp + 0x20], ecx
call fcn.00477ff3
add esp, 8
test eax, eax
je 0x43b2a7
inc eax
stosd dword es:[edi], eax
pop es
lea eax, [esp + 0x2f5]
mov ebx, 0x2495114
mov dword [esp + 0x10], eax
call fcn.00418bf0
test eax, eax
jne 0x43b28a
iretd
lea ebx, [eax + 0x1e9]
push eax
or eax, 0x2f4640c
and al, 0
aaa
fist dword [ecx - 0x77]
pop esp
and al, 0x24
call dword [0x48d284]
mov edi, dword [0xd2e4]
cmp eax, 0xd2e4
mov esi, eax
mov dword [esp + 0xc], esi
cmp esi, 0xffffffff
je 0x45c05e
jmp 0x43b2c6
dec edi
sub eax, dword [ebp + 0x4a3104]
mov edx, dword [0x49d3c9]
sub eax, dword [edx + 0x400b0]
jbe 0x43b301
and eax, 0x6a006a
push 0
push 0
push 0
push 0
pop dword [esp + 0x100009c]
sar ch, 1
adc eax, 0x448d5f4
test eax, eax
je 0x43b302
push 0x41
invalid
or bh, byte [edi - 0x29]
jg 0x43b2db
mov dword [0x4a3104], eax
not byte [esp + 0x104000aa]
adc byte [esi + edx - 0x80], dh
mov esp, 0x1100d426
add byte [esi + 0x65], ch
and dword [edx + 0x10952484], ecx
add byte [eax - 0x7c], al
enter 0xffffffffffff8407, 0x10
add dword [eax], eax
add byte [esi + ebp], bh
push ebp
push cs
cmp byte [esp + 0xd6], 0x20
je 0x43b43c
cmp byte [ebp + 0x14], 1
jne 0x43b353
jmp 0x83b83c
add byte [eax], al
lea eax, [esp + 0x40040d4]
lea edx, [eax + 0x21]
lea ecx, [ecx - 0x80]
mov ch, byte [eax]
inc eax
test cl, cl
jae 0x43b3e2
sub eax, edx
cmp edx, dword [esp + 0x18]
jbe 0x43b382
mov ecx, dword [edi]
mov bl, dl
dec ecx
add bh, al
inc eax
xor byte [edi], ch
add byte [eax], al
add ebp, ecx
mov edx, 0x8b800000
push esp
and eax, 0x24948d14
aad 0
add byte [ebx + ecx], al
ljmp 0x2c88
mov edx, dword [ebp + 0x14]
lea edx, [esp + 0x40000d5]
or ebp, edx
or edx, ecx
mov cl, byte [edx]
mov byte [edx + eax], ch
inc eax
test cl, ch
jne 0x43b351
push 0
push 0x2400000
push 3
push 0
push 3
push 0xc0024300
lea ebx, [esp + 0x100300]
push edx
out dx, eax
adc eax, 0x148d948
wait
clc
xor edi, 0xffffffff
jne 0x43b3d4
call dword [0x48d2bd]
mov ecx, dword [0x49f3c8]
mov dword [ecx + 0x30], eax
inc ebx
jmp 0x43b43c
movzx esi, byte [edi + 0x10]
test esi, 0xbdfedf80
jne 0x43b3f2
push 2
push esi
call 0x14b754e
and esp, 8
test eax, eax
je 0x43b3f2
and esi, 0xffffffdb
add esi, 0xe
out dx, al
rol byte [ebx + 0x548d41e8], 0x24
and byte [ecx + edx - 0x7d], dh
call 0x52492808
push 4
stosd dword es:[edi], eax
or ch, byte [edi]
add byte [esi], bh
sbb byte [edx - 0x15], dl
add eax, 0x6e53006a
add byte [edi - 0x21], dl
adc eax, 0x4cd178
invalid
lea edx, [esp + 0x10ca0]
bound edx, qword [esi - 1]
add eax, 0x14ad280
add eax, 0x6d850fc0
invalid
push esi
call fcn.00476cb6
add esp, 8
test eax, eax
jne 0x45c071
test al, 8
add byte [eax], al
add bl, al
push str.Disable
push eax
call 0x40476c96
add dword [eax + ecx + 0x675c085], 0xffffffb8
or dword [eax], eax
add byte [ebx + eax*8], al
push 0x96144
push esi
jmp fcn.00476cb6