Function at 0x458440
Capabilities:
Capture screenshot
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa4
cmp byte [ebp + 0x24], 0
push ebx
push esi
mov esi, dword [ebp + 0x20]
push edi
mov edi, ecx
mov dword [esp + 0x6c], edi
jne 0x458473
mov edx, str.Fast
mov ecx, esi
call fcn.004afc80
mov byte [esp + 0x13], 0
test eax, eax
je 0x458478
mov byte [esp + 0x13], 1
mov edx, 0x4ec57c
mov ecx, esi
call fcn.004afc80
mov ebx, dword [ebp + 0x18]
mov edx, eax
test edx, edx
movzx esi, bl
movzx ecx, bx
mov eax, ebx
setne byte [esp + 0x11]
shl esi, 8
shr ecx, 8
or esi, ecx
shr eax, 0x10
shl esi, 8
movzx eax, al
or esi, eax
test edx, edx
je 0x4584ba
mov dword [esp + 0x2c], ebx
mov ebx, esi
mov dword [ebp + 0x18], ebx
jmp 0x4584be
mov dword [esp + 0x2c], esi
cmp byte [ebp + 0x24], 0
mov eax, dword [0x4fb218]
mov dword [esp + 0x24], eax
je 0x4584d1
xor esi, esi
jmp 0x4584de
mov cl, 1
cmp cl, byte [edi + 1]
sbb esi, esi
and esi, dword [0x4fb21c]
mov dword [esp + 0x64], esi
test eax, eax
je 0x4584f5
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, eax
call fcn.004b3f70
test esi, esi
je 0x458508
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, esi
call fcn.004b3f70
xorps xmm0, xmm0
lea edx, [esp + 0x58]
push 0
lea ecx, [esp + 0x58]
movlpd qword [esp + 0x58], xmm0
call fcn.004b0d00
mov ebx, dword [ebp + 8]
add esp, 4
mov edx, dword [esp + 0x54]
add ebx, edx
add edx, dword [ebp + 0x10]
mov esi, ebx
mov ecx, dword [ebp + 0xc]
mov eax, edx
add ecx, dword [esp + 0x58]
mov edi, dword [ebp + 0x14]
add edi, dword [esp + 0x58]
cmp ebx, edx
mov dword [esp + 0x44], ebx
cmovle eax, ebx
mov dword [esp + 0x34], ecx
cmovle esi, edx
mov dword [esp + 0x5c], eax
cmp ecx, edi
mov dword [esp + 0x50], edx
mov ebx, ecx
mov eax, edi
cmovle eax, ecx
cmovle ebx, edi
xor ecx, ecx
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0x1c]
test eax, eax
cmovns ecx, eax
mov dword [esp + 0x1c], ecx
cmp ecx, 0xff
jle 0x458589
mov dword [esp + 0x1c], 0xff
jmp 0x45858d
test ecx, ecx
jle 0x4585a4
mov ecx, dword [ebp + 0x18]
mov eax, ecx
shr eax, 8
mov dword [esp + 0x18], eax
mov eax, ecx
mov byte [esp + 0x10], cl
shr eax, 0x10
jmp 0x4585b8
mov al, byte [esp + 0x11]
mov byte [esp + 0x10], al
mov al, byte [esp + 0x11]
mov dword [esp + 0x18], eax
mov al, byte [esp + 0x11]
push 0
mov dword [esp + 0x34], eax
call dword [sym.imp.USER32.dll_GetDC]
mov edx, eax
mov dword [esp + 0x20], edx
test edx, edx
je 0x458ece
cmp byte [esp + 0x13], 0
mov byte [esp + 0x12], 0
je 0x458bde
sub esi, dword [esp + 0x5c]
xor ecx, ecx
sub ebx, dword [esp + 0x60]
xor eax, eax
push edx
mov dword [esp + 0x44], ecx
inc esi
mov dword [esp + 0x18], ecx
inc ebx
mov dword [esp + 0x50], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [esp + 0x3c], eax
test eax, eax
je 0x458a25
push ebx
push esi
push dword [esp + 0x28]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [esp + 0x40], eax
test eax, eax
je 0x458a25
push eax
push dword [esp + 0x40]
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [esp + 0x4c], eax
test eax, eax
je 0x458a25
push 0xcc0020
push dword [esp + 0x64]
push dword [esp + 0x64]
push dword [esp + 0x2c]
push ebx
mov ebx, dword [esp + 0x50]
push esi
push 0
push 0
push ebx
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
je 0x458a25
mov ecx, dword [esp + 0x40]
lea eax, [esp + 0xf]
push 8
push eax
lea eax, [esp + 0x40]
mov edx, ebx
push eax
lea eax, [esp + 0x34]
push eax
call fcn.00458230
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
je 0x458a25
mov ebx, dword [esp + 0x28]
mov edx, ebx
imul edx, dword [esp + 0x38]
cmp byte [esp + 0xf], 0
mov dword [esp + 0x38], edx
je 0x45873e
xor esi, esi
test edx, edx
jle 0x458742
cmp edx, 0x10
jb 0x458730
mov eax, edx
and eax, reloc.WSOCK32.dll_ntohs
jns 0x4586ca
dec eax
or eax, 0xfffffff0
inc eax
movaps xmm2, xmmword [0x4f1190]
mov ecx, edx
sub ecx, eax
mov eax, dword [esp + 0x14]
add eax, 0x20
nop dword [eax]
movups xmm0, xmmword [eax - 0x20]
lea eax, [eax + 0x40]
add esi, 0x10
movaps xmm1, xmm2
pand xmm1, xmm0
movups xmmword [eax - 0x60], xmm1
movaps xmm1, xmm2
movups xmm0, xmmword [eax - 0x50]
pand xmm1, xmm0
movups xmmword [eax - 0x50], xmm1
movaps xmm1, xmm2
movups xmm0, xmmword [eax - 0x40]
pand xmm1, xmm0
movups xmmword [eax - 0x40], xmm1
movups xmm0, xmmword [eax - 0x30]
pand xmm0, xmm2
movups xmmword [eax - 0x30], xmm0
cmp esi, ecx
jl 0x4586e0
mov eax, dword [esp + 0x14]
cmp esi, edx
jge 0x458742
nop dword [eax + eax]
and dword [eax + esi*4], 0xf8f8f8f8
inc esi
cmp esi, edx
jl 0x458730
jmp 0x458742
mov esi, dword [esp + 0x48]
cmp byte [ebp + 0x24], 0
je 0x4587c5
mov edx, dword [eax]
and edx, 0xffffff
cmp byte [esp + 0x11], 0
jne 0x45876d
movzx ecx, dl
movzx eax, dx
shl ecx, 8
shr eax, 8
or ecx, eax
shr edx, 0x10
shl ecx, 8
or edx, ecx
push edx
lea eax, [esp + 0x74]
push str.0x_06X
push eax
call fcn.00406580
mov edi, dword [esp + 0x30]
lea eax, [esp + 0x7c]
add esp, 0xc
mov ecx, edi
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.004b3f70
push dword [esp + 0x20]
mov byte [esp + 0x16], 1
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [esp + 0x4c]
push eax
push dword [esp + 0x40]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [esp + 0x3c]
call dword [sym.imp.GDI32.dll_DeleteDC]
jmp 0x458a99
cmp dword [esp + 0x1c], 1
jge 0x458888
cmp byte [esp + 0xf], 0
je 0x4587df
and dword [esp + 0x2c], 0xf8f8f8f8
xor ecx, ecx
test edx, edx
jle 0x458877
lea ebx, [edx - 1]
nop dword [eax]
mov eax, dword [esp + 0x44]
cmp eax, dword [esp + 0x50]
jle 0x45881c
cmp dword [esp + 0x34], edi
jle 0x458804
mov esi, ebx
jmp 0x458841
mov eax, ecx
cdq
idiv dword [esp + 0x28]
lea esi, [eax + 1]
imul esi, dword [esp + 0x28]
sub esi, edx
mov edx, dword [esp + 0x38]
dec esi
jmp 0x458841
cmp dword [esp + 0x34], edi
jle 0x45883f
mov eax, ebx
cdq
idiv dword [esp + 0x28]
mov esi, eax
mov eax, ecx
cdq
idiv dword [esp + 0x28]
imul esi, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x38]
jmp 0x458841
mov esi, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [eax + esi*4]
and eax, 0xffffff
cmp eax, dword [esp + 0x2c]
je 0x45886e
inc ecx
dec ebx
cmp ecx, edx
jl 0x4587f0
push dword [esp + 0x20]
mov ebx, dword [esp + 0x2c]
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x458a66
mov ebx, dword [esp + 0x28]
mov byte [esp + 0x12], 1
push dword [esp + 0x20]
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x458a66
cmp byte [esp + 0xf], 0
mov al, byte [esp + 0x10]
mov ecx, dword [esp + 0x18]
je 0x4588a9
and al, 0xf8
and ecx, 0xfffffff8
and byte [esp + 0x30], 0xf8
mov byte [esp + 0x10], al
mov dword [esp + 0x18], ecx
mov edx, dword [esp + 0x1c]
mov ah, dl
movzx ebx, al
mov byte [esp + 0xf], ah
cmp edx, ebx
jle 0x4588c1
mov byte [esp + 0x13], 0
jmp 0x4588c7
sub al, ah
mov byte [esp + 0x13], al
movzx edx, cl
mov al, cl
sub al, ah
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x1c]
xor ecx, ecx
cmp edx, dword [esp + 0x2c]
movzx eax, al
cmovle ecx, eax
mov eax, dword [esp + 0x30]
movzx edx, al
sub al, byte [esp + 0xf]
mov dword [esp + 0x68], ecx
xor ecx, ecx
cmp dword [esp + 0x1c], edx
movzx eax, al
cmovle ecx, eax
mov dword [esp + 0x48], ecx
mov ecx, 0xff
mov eax, ecx
sub eax, ebx
mov bl, byte [esp + 0xf]
cmp dword [esp + 0x1c], eax
jle 0x45891a
mov byte [esp + 0x10], cl
jmp 0x458924
mov bh, bl
add bh, byte [esp + 0x10]
mov byte [esp + 0x10], bh
mov eax, ecx
sub eax, dword [esp + 0x2c]
cmp dword [esp + 0x1c], eax
jle 0x458936
mov byte [esp + 0x11], cl
jmp 0x458942
mov eax, dword [esp + 0x18]
mov bh, bl
add bh, al
mov byte [esp + 0x11], bh
sub ecx, edx
cmp dword [esp + 0x1c], ecx
jle 0x458951
mov byte [esp + 0xf], 0xff
jmp 0x458959
add bl, byte [esp + 0x30]
mov byte [esp + 0xf], bl
mov edx, dword [esp + 0x38]
xor ecx, ecx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x2c], ecx
test edx, edx
jle 0x458a2d
lea eax, [edx - 1]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0x44]
cmp edx, dword [esp + 0x50]
jle 0x45899a
cmp dword [esp + 0x34], edi
jle 0x45898a
mov esi, eax
jmp 0x4589b3
mov eax, ecx
cdq
idiv ebx
lea esi, [eax + 1]
imul esi, ebx
sub esi, edx
dec esi
jmp 0x4589b3
cmp dword [esp + 0x34], edi
jle 0x4589b1
cdq
idiv ebx
mov esi, eax
mov eax, ecx
cdq
idiv ebx
imul esi, ebx
add esi, edx
jmp 0x4589b3
mov esi, ecx
mov eax, dword [esp + 0x14]
mov edx, dword [eax + esi*4]
mov ecx, edx
mov eax, edx
shr ecx, 0x10
shr eax, 8
cmp cl, byte [esp + 0x13]
jb 0x4589e8
cmp cl, byte [esp + 0x10]
ja 0x4589e8
cmp al, byte [esp + 0x68]
jb 0x4589e8
cmp al, byte [esp + 0x11]
ja 0x4589e8
cmp dl, byte [esp + 0x48]
jb 0x4589e8
cmp dl, byte [esp + 0xf]
jbe 0x458a12
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x18]
inc ecx
dec eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x18], eax
cmp ecx, dword [esp + 0x38]
jl 0x458976
push dword [esp + 0x20]
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x458a66
push dword [esp + 0x20]
mov byte [esp + 0x16], 1
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
jmp 0x458a66
mov esi, dword [esp + 0x48]
mov ebx, dword [esp + 0x28]
push dword [esp + 0x20]
mov edi, dword [esp + 0x50]
push 0
mov dword [esp + 0x54], edi
call dword [sym.imp.USER32.dll_ReleaseDC]
cmp dword [esp + 0x3c], 0
mov byte [esp + 0x12], 0
je 0x458a95
mov eax, dword [esp + 0x40]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x14]
mov byte [esp + 0x12], 0
mov dword [esp + 0x14], eax
test edi, edi
je 0x458a85
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x24]
push eax
push dword [esp + 0x40]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [esp + 0x3c]
call dword [sym.imp.GDI32.dll_DeleteDC]
jmp 0x458a99
push dword [esp + 0x3c]
mov edi, dword [esp + 0x28]
call dword [sym.imp.GDI32.dll_DeleteDC]
jmp 0x458a99
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x40]
test eax, eax
je 0x458aa8
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [esp + 0x14]
test eax, eax
je 0x458ece
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
cmp byte [ebp + 0x24], 0
jne 0x458bb1
cmp byte [esp + 0x12], 0
je 0x458bb1
test edi, edi
je 0x458b48
mov eax, esi
cdq
idiv ebx
mov eax, dword [esp + 0x24]
mov edi, edx
sub edi, dword [esp + 0x54]
add edi, dword [esp + 0x5c]
cmp byte [eax + 0x17], 0
jne 0x458af7
mov eax, dword [eax + 0xc]
mov dword [esp + 0x24], eax
mov cl, byte [eax + 0x15]
test cl, 2
je 0x458b14
and cl, 0x3d
mov byte [eax + 0x15], cl
mov ecx, dword [eax]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov eax, dword [esp + 0x24]
mov cl, byte [eax + 0x15]
mov eax, edi
and cl, 0x9b
mov edi, dword [esp + 0x24]
or cl, 0x18
cdq
mov dword [edi], eax
mov dword [edi + 4], edx
mov byte [edi + 0x15], cl
jge 0x458b38
mov ecx, edi
call fcn.00401460
and byte [edi + 0x15], 0x8f
jmp 0x458b48
cmp dword [0x4f99f4], 0
je 0x458b48
mov ecx, edi
call fcn.00401460
mov edi, dword [esp + 0x64]
test edi, edi
je 0x458bb1
mov eax, esi
cdq
idiv ebx
mov esi, eax
sub esi, dword [esp + 0x58]
add esi, dword [esp + 0x60]
cmp byte [edi + 0x17], 0
jne 0x458b68
mov edi, dword [edi + 0xc]
mov cl, byte [edi + 0x15]
test cl, 2
je 0x458b81
and cl, 0x3d
mov byte [edi + 0x15], cl
mov ecx, dword [edi]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov cl, byte [edi + 0x15]
mov eax, esi
and cl, 0x9b
cdq
or cl, 0x18
mov dword [edi], eax
mov dword [edi + 4], edx
mov byte [edi + 0x15], cl
jge 0x458ba1
mov ecx, edi
call fcn.00401460
and byte [edi + 0x15], 0x8f
jmp 0x458bb1
cmp dword [0x4f99f4], 0
je 0x458bb1
mov ecx, edi
call fcn.00401460
cmp byte [esp + 0x12], 0
mov ecx, 0x4e413c
push 1
push 0
mov eax, 0x4cdd08
cmove eax, ecx
mov ecx, dword [0x4f99cc]
push 0xffffffffffffffff
push eax
call fcn.004b3f70
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov eax, dword [esp + 0x1c]
test eax, eax
jle 0x458cbe
mov dl, byte [esp + 0x10]
mov dh, al
movzx esi, dl
cmp eax, esi
jle 0x458bfe
mov byte [esp + 0x10], 0
jmp 0x458c06
mov al, dl
sub al, dh
mov byte [esp + 0x10], al
mov ebx, dword [esp + 0x18]
mov al, bl
sub al, dh
movzx ecx, bl
cmp dword [esp + 0x1c], ecx
mov dword [esp + 0x48], ecx
movzx eax, al
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0x18]
cmovle ecx, eax
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x30]
mov dword [esp + 0x18], ecx
movzx ecx, al
sub al, dh
cmp dword [esp + 0x1c], ecx
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x14]
movzx eax, al
cmovle ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, 0xff
mov eax, ecx
sub eax, esi
mov esi, dword [esp + 0x1c]
cmp esi, eax
jle 0x458c6d
mov byte [esp + 0x12], cl
jmp 0x458c75
mov al, dh
add al, dl
mov byte [esp + 0x12], al
mov eax, ecx
sub eax, dword [esp + 0x48]
cmp esi, eax
jle 0x458c85
mov byte [esp + 0xf], cl
jmp 0x458c8d
mov dl, dh
add dl, bl
mov byte [esp + 0xf], dl
sub ecx, dword [esp + 0x68]
cmp esi, ecx
jle 0x458ca0
mov edx, dword [esp + 0x20]
mov byte [esp + 0x13], 0xff
jmp 0x458cee
add dh, byte [esp + 0x30]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov byte [esp + 0x13], dh
mov edx, dword [esp + 0x20]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
jmp 0x458cee
mov al, byte [esp + 0x11]
mov byte [esp + 0x10], al
mov al, byte [esp + 0x11]
mov dword [esp + 0x18], eax
mov al, byte [esp + 0x11]
mov dword [esp + 0x14], eax
mov al, byte [esp + 0x11]
mov byte [esp + 0x12], al
mov al, byte [esp + 0x11]
mov byte [esp + 0xf], al
mov al, byte [esp + 0x11]
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x44]
mov ebx, eax
mov ecx, dword [esp + 0x50]
cmp eax, ecx
jle 0x458d05
xor eax, eax
cmp ebx, ecx
setge al
jmp 0x458d0c
xor eax, eax
cmp ebx, ecx
setle al
test eax, eax
je 0x458ea6
mov eax, dword [esp + 0x34]
mov esi, eax
nop word [eax + eax]
cmp eax, edi
jle 0x458d2d
xor eax, eax
cmp esi, edi
setge al
jmp 0x458d34
xor eax, eax
cmp esi, edi
setle al
test eax, eax
je 0x458dff
push esi
push ebx
push edx
call dword [sym.imp.GDI32.dll_GetPixel]
cmp dword [esp + 0x1c], 1
jge 0x458db3
cmp eax, dword [ebp + 0x18]
jne 0x458de5
push dword [esp + 0x20]
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov edi, dword [esp + 0x24]
test edi, edi
je 0x458e29
sub ebx, dword [esp + 0x54]
cmp byte [edi + 0x17], 0
jne 0x458d7a
mov edi, dword [edi + 0xc]
mov cl, byte [edi + 0x15]
test cl, 2
je 0x458d93
and cl, 0x3d
mov byte [edi + 0x15], cl
mov ecx, dword [edi]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov cl, byte [edi + 0x15]
mov eax, ebx
and cl, 0x9b
cdq
or cl, 0x18
mov dword [edi], eax
mov dword [edi + 4], edx
mov byte [edi + 0x15], cl
jge 0x458e19
mov ecx, edi
call fcn.00401460
and byte [edi + 0x15], 0x8f
jmp 0x458e29
mov ecx, eax
mov edx, eax
shr ecx, 8
shr edx, 0x10
cmp al, byte [esp + 0x10]
jb 0x458de5
cmp al, byte [esp + 0x12]
ja 0x458de5
cmp cl, byte [esp + 0x18]
jb 0x458de5
cmp cl, byte [esp + 0xf]
ja 0x458de5
cmp dl, byte [esp + 0x14]
jb 0x458de5
cmp dl, byte [esp + 0x13]
jbe 0x458d55
mov edx, dword [esp + 0x20]
xor eax, eax
cmp dword [esp + 0x34], edi
setle al
lea esi, [esi + eax*2]
mov eax, dword [esp + 0x34]
dec esi
jmp 0x458d20
mov ecx, dword [esp + 0x50]
xor eax, eax
cmp dword [esp + 0x44], ecx
setle al
lea ebx, [ebx + eax*2]
mov eax, dword [esp + 0x44]
dec ebx
jmp 0x458cf8
cmp dword [0x4f99f4], 0
je 0x458e29
mov ecx, edi
call fcn.00401460
mov ebx, dword [esp + 0x64]
test ebx, ebx
je 0x458e87
sub esi, dword [esp + 0x58]
cmp byte [ebx + 0x17], 0
jne 0x458e3e
mov ebx, dword [ebx + 0xc]
mov cl, byte [ebx + 0x15]
test cl, 2
je 0x458e57
and cl, 0x3d
mov byte [ebx + 0x15], cl
mov ecx, dword [ebx]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov cl, byte [ebx + 0x15]
mov eax, esi
and cl, 0x9b
cdq
or cl, 0x18
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov byte [ebx + 0x15], cl
jge 0x458e77
mov ecx, ebx
call fcn.00401460
and byte [ebx + 0x15], 0x8f
jmp 0x458e87
cmp dword [0x4f99f4], 0
je 0x458e87
mov ecx, ebx
call fcn.00401460
mov ecx, dword [0x4f99cc]
push 1
push 0
push 0xffffffffffffffff
push 0x4cdd08
call fcn.004b3f70
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
push edx
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov ecx, dword [0x4f99cc]
push 1
push 0
push 0xffffffffffffffff
push 0x4e413c
call fcn.004b3f70
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
cmp byte [ebp + 0x24], 0
mov ecx, 0x4e413c
mov eax, 0x4e4674
cmove ecx, eax
cmp word [ecx], 0x30
jne 0x458eec
cmp word [ecx + 2], 0
je 0x458efa
mov eax, dword [0x4f70f4]
test byte [eax + 0x100], 1
jne 0x458f15
push 1
push 0
push 0xffffffffffffffff
push ecx
mov ecx, dword [0x4f99cc]
call fcn.004b3f70
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
push 0x4cdc40
push 0
push ecx
mov ecx, dword [esp + 0x78]
call fcn.0044d370
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20