Function at 0x458cb8
Capabilities:
Capture screenshot

Disassembly:
pop es
adc dword [eax + edx*2 + 0x65], edx
jb 0x458d25
outsd dx, dword [esi]
jb 0x458d2f
popal
outsb dx, byte [esi]
arpl word [ebp + 0x47], sp
jb 0x458d2a
jo 0x458d33
jo 0x458d08
push ebx
add byte [ebx + edx*4 + 0x1c004d], al
or byte [eax + 0x45], dl
push edx
inc esi
inc edi
push edx
inc ecx
push eax
adc dword [eax], eax
sub byte [ebp + 0x40], ch
add byte [ebx], bl
add bh, bh
push 0x1004dc5
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
or eax, dword [eax]
add eax, 0x67696c41
outsb dx, byte [esi]
sub byte [ebp + 0x40], 0
popal
add byte [eax], al
jmp [eax + 0x44004dc3]
test al, 0xc3
dec ebp
add byte [esp + eax*8 + 0x4d], al
add byte [eax], al
add byte [eax], al
add byte [ebx], 0
add byte [eax], al
or al, 0
pop es
inc ecx
outsb dx, byte [esi]
arpl word [eax + 0x6f], bp
jb 0x458d95
add byte [edx + 0x74004d], 0
add byte [eax + eax], dh
call dword [eax - 0xb]
push eax
cmc
dec ebp
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
or eax, 0x6f430b00
outsb dx, byte [esi]
jae 0x458db6
jb 0x458da5
imul ebp, dword [esi + 0x74], 0x406d9073
add byte [eax], dl
add dh, bh
add byte fs:[eax], al
invalid
pop es
inc ebp
outsb dx, byte [esi]
popal
bound ebp, qword [ebp + 0x64]
cmp byte [edi + 0x1680045], cl
add bh, bh
clc
jns 0x458dba
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
sldt word [ebx + ecx*2]
imul ebp, dword [esi + 0x64], 0x406f5c
insb byte es:[edi], dx
add dword [eax], eax
jmp [edx + edi*2]
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax + 0x8000], al
adc byte [eax], al
or dword [esi + 0x6f], eax
outsd dx, dword [esi]
jb 0x458e0d
inc ebx
outsd dx, dword [esi]
insb byte es:[edi], dx
outsd dx, dword [esi]
jb 0x458e0a
outsd dx, dword [esi]
inc eax
add byte [eax + 1], dh
add bh, bh
pushal
jp 0x458dfd
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
adc dword [eax], eax
or dword [edx + 0x61], eax
arpl word [ebx + 0x43], bp
outsd dx, dword [esi]
insb byte es:[edi], dx
outsd dx, dword [esi]
jb 0x458d62
insd dword es:[edi], dx
inc eax
add byte [edx - 0xf010000], bl
ror dword [ebp], 1
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax + 1], al
adc al, byte [eax]
push cs
push eax
popal
jb 0x458e55
outsb dx, byte [esi]
je 0x458e46
push 0x6948776f
outsb dx, byte [esi]
je 0x458e6f
outsd dx, dword [esi]
inc eax
add byte [ecx + eax], dh
call dword [edx + edi*2 + 0x10045]
add byte [eax], al
add byte [eax], al
add byte [eax + 0xf], al
or byte [edi], 0
add byte [eax], al
adc eax, dword [eax]
or byte [edi + 0x72], al
imul esp, dword [ebx + edx*2 + 0x69], 0x6f74657a
inc eax
add byte [eax + 1], bh
add bh, bh
aam 0x7a
inc ebp
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ebx], 0
add byte [eax], al
adc al, 0
or byte [ebx + 0x74], dl
jo 0x458e90
imul edi, dword [edx + 0x65], 0x406f74
jl 0x458e47
add bh, bh
sbb al, 0x7b
call [ebx + edi*2]
inc ebp
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sub al, 3
add byte [eax], al
adc eax, 0x63530500
add eax, dword [eax]
add byte [0x63530500], dl
popal
insb byte es:[edi], dx
je 0x458ed1
inc eax
add byte [eax - 0x4300ffff], al
jnp 0x458eb0
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sub al, 3
add byte [eax], al
push ss
add byte [eax], cl
inc edi
jb 0x458edf
imul esp, dword fs:[ebp + 0x6e], 0x406d9074
add byte [ecx + eax + 0x7bf0ff00], al
inc ebp
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
pop ss
add byte [ecx], cl
inc edi
jb 0x458f0a
insb byte es:[edi], dx
imul ebp, dword [esi + 0x65], 0x406f7473
add byte [eax + 0x24ff0001], cl
jl 0x458ef7
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edx], 0
add byte [eax], al
sbb byte [eax], al
or byte [eax + 0x65], dl
outsb dx, byte [esi]
push edi
imul esp, dword [esp + esi*2 + 0x68], 0x406e18
nop
add dword [eax], eax
call dword [eax + 0x1ff0001]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
sbb dword [eax], eax
or eax, 0x63536e4f
add byte [eax], al
add byte [ecx], bl
add byte [0x63536e4f], cl
popal
insb byte es:[edi], dx
inc ebx
push 0x65676e61
nop
insd dword es:[edi], dx
inc eax
add byte [ecx - 0x33010000], bl
add byte [eax], al
dec esp
ror dword [ebp], 1
xchg esp, eax
ror dword [ebp], 1
add byte [eax], al
add byte [eax], al
sbb al, byte [eax]
or byte [ebx + 0x68], dl
outsd dx, dword [esi]
ja 0x458f5a
imul ebp, dword [esi + 0x74], 0x406d90
push edi
add byte [eax], al
call [edi + ecx*8 - 0xf07ffb3]
dec ebp
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
sbb eax, dword [eax]
pop es
push esi
imul esi, dword [ebx + 0x69], 0x90656c62
cmp al, 0x8f
inc ebp
add byte [ebx], al
or dl, byte [edi + eax*2 + 0x72]
popal
jo 0x458fac
dec ebx
imul ebp, dword [esi + 0x64], 0
add byte [ecx], al
add byte [eax], al
add byte [eax], bh
pop dword [ebp]
add eax, 0x61426770
jb 0x458f62
jo 0x458fc5
dec esp
imul ebp, dword [esi + 0x65], 0x52455008
or byte [eax + 0x45], dl
push edx
inc esi
inc edi
push edx
inc ecx
push eax
nop
add ch, byte [eax + 0x18]
cmp al, 0x53
add byte [ebx - 0xf17aef6], cl
test al, 0xc
add byte [ebx - 0x2c9f5e38], cl
push ebx
add byte [ebx + 0x1eba00], cl
add byte [eax], al
add byte [eax], al
add al, ch
packuswb mm1, qword [ebx]
add byte [edx + 0x10], ch
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c29
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x1f
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c3a
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x20
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c4b
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x21
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c5c
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x22
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c6d
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x23
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c7e
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x24
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533c8f
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x25
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533ca0
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x26
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533cb1
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x27
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533cc2
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x28
call fcn.0050f6dc
push 0x10
push 0
mov ecx, dword [0x53d0b8]
push 0
push 2
push 0x533cd3
mov eax, dword [ecx]
push eax
call sub.user32.dll_LoadImageA
mov ecx, eax
mov edx, dword [0x53d360]
mov eax, dword [edx]
mov edx, 0x29
call fcn.0050f6dc
xor ecx, ecx
mov dword [0x552054], ecx
mov dl, 1
mov eax, dword [0x4bb520]
call fcn.004c18ec
mov ecx, dword [ebp - 0x30]
mov dword [ecx + 0x674], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax + 0x674]
mov edx, 0x533ce4
mov eax, dword [ebp - 0x30]
call fcn.004444ec
xor edx, edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x3c], 0x552004
mov dl, 1
mov eax, dword [0x4bb520]
call fcn.004c18ec
mov ecx, dword [ebp - 0x3c]
mov dword [ecx], eax
mov dl, 6
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
call fcn.004c2fa4
mov edx, 0xf0
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ecx]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x5f
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax]
mov ecx, dword [eax]
call dword [ecx + 0x34]
push 0xcc0020
mov edx, dword [ebp - 0x38]
mov eax, edx
lea edx, [eax + edx*2]
shl edx, 5
sub edx, eax
push edx
push 0
mov edx, dword [ebp - 0x30]
mov eax, dword [edx + 0x674]
call fcn.004c1eb4
call fcn.004bd910
push eax
push 0x5f
push 0xf0
push 0
push 0
mov edx, dword [ebp - 0x3c]
mov eax, dword [edx]
call fcn.004c1eb4
call fcn.004bd910
push eax
call sub.gdi32.dll_BitBlt
inc dword [ebp - 0x38]
add dword [ebp - 0x3c], 4
cmp dword [ebp - 0x38], 0xb
jl 0x459211
mov dl, 1
mov eax, dword [0x4bb520]
call fcn.004c18ec
mov dword [0x552030], eax
mov dl, 6
mov eax, dword [0x552030]
call fcn.004c2fa4
mov edx, 0x78
mov eax, dword [0x552030]
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov edx, 0x5f
mov eax, dword [0x552030]
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov edx, dword [ebp - 0x30]
mov eax, dword [edx + 0x674]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x459314
mov edx, dword [ebp - 8]
mov ecx, dword [edx]
mov dword [ebp - 4], ecx
mov word [ebp - 0x1c], 0x14
mov edx, 3
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx - 4]
mov word [ebp - 0x1c], 8
mov eax, dword [ebp - 0x2c]
mov dword fs:[0], eax
mov esp, ebp
pop ebp
ret