Function at 0x41e5f9
Capabilities:
Resolve function by parsing pe exports

Disassembly:
fisttp dword [ecx + 0x5d89f84d]
int3
aam 0x8b
cmovno eax, edi
inc ebp
fadd dword [ecx]
sub eax, 0
cmp dword [eax + 0xc], 5
mov dword [edi], ecx
jne 0x45e997
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
mov edx, dword [ebp + 8]
cmp ecx, dword [edx + 8]
jae 0xe8c4e73c
mov esi, dword [ebp - 8]
mov dword [ebp - 0x18], 0x8d50004e
mov dword [ebp - 0x20], 0xe883004f
mov eax, dword [eax]
mov eax, dword [eax - 0x72af1fad]
mov dword [ebp - 0x14], eax
mov eax, dword [edx + 4]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebp - 0x14]
jg 0x45e9f3
mov esi, dword [ebp - 0x10]
movzx esi, word [esi + 8]
cmp si, word [ebp - 0x18]
mov dword [ebp - 0x1c], esi
mov esi, dword [ebp - 8]
je 0x45e9a1
mov esi, dword [ebp - 0x10]
movsx esi, word [esi + 0xa]
mov dword [ebp - 0x10], esi
mov esi, dword [ebp - 8]
cmp eax, dword [ebp - 0x14]
jl 0x45e9ec
push 0x4f
pop eax
cmp word [ebp - 0x1c], ax
je 0x45e9c3
push 0xffffffffffffffff
lea eax, [ebp - 0x34]
mov ecx, esi
push eax
push edi
push edx
call fcn.0040ec56
test eax, eax
js 0x1cee73c
cmp dword [ebp + 0x18], 0x50
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x1c], ebx
mov eax, dword [ecx]
mov dword [eax - 0x72affdf0], ebx
jle 0x41e6d4
sbb byte [eax - 0x75], dl
dec ebp
hlt
mov esi, dword [ebp + 0x18]
mov edi, ebx
mov ebx, dword [ebp + 0x14]
push dword [ebx + edi*4]
call fcn.00406b3f
inc edi
cmp edi, esi
jl 0x41e6bf
mov esi, dword [ebp - 8]
xor ebx, ebx
mov edi, dword [ebp + 0xc]
push ebx
push 2
push ecx
call fcn.00420506
add esp, 0xc
test eax, eax
je 0x45e9e5
lea ecx, [ebp - 0x34]
push ecx
mov ecx, eax
call 0x140ad01
mov edx, dword [ebp + 8]
mov ecx, dword [edi]
mov eax, dword [edx + 4]
mov esi, dword [ebp - 8]
mov eax, dword [eax + ecx*4]
cmp word [eax + 8], 0x40
jne 0x41e726
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x14]
inc dword [edx + eax*4 - 4]
inc ecx
inc esp
cmp ah, 0x41
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xc]
mov dword [edi], ecx
cmp ecx, dword [edx + 8]
jb 0x41e632
jmp 0x41e73c
movzx edx, word [eax + 8]
cmp dx, word [ebp - 0x20]
jne 0x45e9dc
lea eax, [ecx + 1]
xor ebx, ebx
mov dword [edi], eax
inc ebx
lea ecx, [ebp - 0x34]
call 0x140cfb6
pop edi
pop esi
mov al, bl
pop ebx
leave
mov dword [eax], edx
je 0x41e784
mov ecx, dword [ebx - 0x33f7f7bb]
jne 0x41e763
mov eax, dword [ecx]
mov eax, dword [eax - 0x72af1fad]
js 0x41e775
mov ecx, dword [ecx]
cmp eax, dword [ecx - 0x72af1fad]
jg 0x41e775
xor eax, eax
jmp 0x41e75f
call 0xf9cd3edf
mov ecx, dword [ebp + 8]
mov dword [esp + 0x44], edi
mov eax, dword [ecx + 8]
mov dword [esp + 0x24], eax
mov eax, dword [ecx + 4]
mov esi, dword [eax]
mov ecx, esi
call fcn.00407526
mov eax, dword [esi + 8]
lea ecx, [esp + 0x28]
push 0x49cc08
mov eax, dword [eax]
mov dword [esp + 0x24], eax
call 0xceede3
mov esi, dword [ebp + 0xc]
mov ecx, esi
call fcn.0040cfb6
and dword [esi], 0
lea eax, [edi - 0x72affef0]
mov dword [esp + 0x4c], eax
mov ecx, 0x49ccb0
lea eax, [edi - 0x72af1ffe]
mov dword [ecx + 0x5c], ecx
mov dword [esp + 0x58], eax
mov edx, 0x49ccb8
lea eax, [edi - 0x72af1ffd]
mov dword [ecx + 0x68], ecx
add eax, dword [eax]
push 0x64
lea eax, [edi + 0x114]
mov dword [esp + 0x18d00b8], eax
lea eax, [edi + 0x118]
mov dword [esp + 0x18d00c4], eax
lea eax, [edi + 0x11c]
mov dword [esp + 0x18d00d0], eax
lea eax, [edi + 0x108]
mov dword [esp + 0x18d00a4], ecx
mov ecx, 0x49ccec
mov dword [esp + 0x18d00dc], eax
lea eax, [edi + 0x104]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc8], ecx
mov ecx, 0x49ccb0
mov dword [esp + 0x18d00e8], eax
lea eax, [edi - 0x72af1fad]
mov dword [esi + 0x53], 0x18d50e0
mov dword [esp + 0x48], 0x49d138
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], 0x49d114
mov dword [esp + 0x60], 0x49d0f0
mov dword [esp + 0x6c], 0x49d0d4
mov dword [esp + 0x70], 0x4d18b0
mov dword [esp + 0x74], 0x49ccc8
mov dword [esp + 0x78], 0x49d0b8
mov dword [esp + 0x7c], 0x4d18b4
mov dword [esp + 0x18d5080], edx
mov dword [esp - 0x177cff7c], 0x49d08c
mov dword [esp + 0x18d88], 0x4d18c4
mov dword [esp + 0x8c], 0x49d080
mov dword [esp + 0x90], 0x49d060
mov dword [esp + 0x94], 0x4d18c0
mov dword [esp + 0x98], 0x49d050
mov dword [esp + 0x9c], 0x49d030
mov dword [esp + 0xa0], 0x4d18bc
mov dword [esp + 0xa8], 0x49d014
mov dword [esp - 0x72afff54], 0x4d18b8
mov dword [esp - 0x72afff50], 0x49d000
mov dword [esp + 0x8d50b4], 0x49cfe0
mov dword [esp - 0x72afff40], 0x49cfb8
mov dword [esp - 0x72afff34], 0x49cf90
mov dword [esp - 0x72afff2c], 0x49ccdc
mov dword [esp + 0xd8], 0x49cf70
mov dword [esp + 0x18d50e0], edx
mov dword [esp + 0xe4], 0x49cf50
mov dword [esp + 0x18d50ec], ecx
mov dword [esp + 0xf0], str.SendCap
mov dword [esp + 0xf4], eax
mov dword [esp + 0x18d50f8], edx
mov dword [esp + 0x18d50fc], 0x49cf10
lea eax, [edi + 0x91]
mov dword [esp + 0x104], ecx
mov dword [esp - 0x72af1fff], eax
mov ecx, 0x49ccd0
lea eax, [edi + 0x90]
mov dword [esp + 0x11c], ecx
mov dword [esp - 0x72af1fad], eax
mov edx, 0x49ccc8
lea eax, [edi + 0x88]
mov dword [esp + 0x128], ecx
mov dword [esp + 0x118], eax
mov ecx, 0x49ccb0
lea eax, [edi + 0x8c]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x18d0124], eax
lea eax, [edi + 0x120]
mov dword [esp + 0x18d0130], eax
lea eax, [edi + 0x450]
mov dword [esp + 0x18d013c], eax
lea eax, [edi + 0x2cc]
mov dword [esp + 0x18d0184], eax
lea eax, [edi + 0x2cd]
mov dword [esp + 0x18d0190], eax
lea eax, [edi + 0x2c8]
mov dword [esp + 0x18d019c], eax
lea eax, [edi + 0x2e4]
mov dword [esp - 0x72affe4c], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x158], ecx
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x188], ecx
mov dword [esp - 0x177cfe6c], ecx
mov ecx, dword [eax + 4]
mov dword [esp - 0x72affef0], edx
mov dword [esp + 0x18d014c], edx
xor edx, edx
mov dword [esp + 0x108], 0x49ceec
mov eax, dword [ecx]
mov dword [esp + 0x114], 0x49ced0
mov dword [esp + 0x120], 0x49ceac
mov dword [esp + 0x12c], str.TrayAutoPause
cmp dword [eax + 0xc], 4
mov dword [esp - 0x72af1fc8], 0x49ce7c
mov dword [esp - 0x72af1fc0], 0x49ce6c
mov dword [esp - 0x72af1fbc], 0x49ce50
mov dword [esp - 0x72af1fb8], 0x4d1996
mov dword [esp - 0x72af1fb0], 0x49ce34
mov dword [esp - 0x72af1fac], 0x4d1365
mov dword [esp - 0x72af1fa4], 0x49ce18
mov dword [esp - 0x72af1fa0], edx
mov dword [esp - 0x72af1f9c], 0x49ce0c
mov dword [esp - 0x177cfe98], 0x49cdf0
mov dword [esp - 0x72af1f94], edx
mov dword [esp - 0x72af1f90], 0x49cde4
mov dword [esp - 0x177cfe8c], 0x49cdc4
mov dword [esp - 0x177cfe88], 0x4d1a30
mov dword [esp - 0x177cfe80], 0x49cd9c
mov dword [esp - 0x177cfe74], 0x49cd78
mov dword [esp - 0x72af1f68], 0x49cd54
mov dword [esp - 0x72af1f60], 0x49cd44
mov dword [esp - 0x177cfe5c], 0x49cd20
mov dword [esp - 0x72af1f58], edx
mov dword [esp - 0x72af1f54], 0x49cd14
mov dword [esp - 0x72af1f50], 0x49ccf8
mov dword [esp - 0x72affe48], 0x49ccdc
jne 0x45ea09
mov edx, dword [edx + ebp*2 + 0x20]
push 0x2a
pop eax
cmp word [edx], ax
je 0x45edf0
cmp dword [esp + 0x24], 1
je 0x45ea37
mov ecx, dword [ecx + 4]
push 0x29
call fcn.00409b5d
test al, al
jne 0x45ea42
call fcn.0040b57d
mov edx, dword [edx + ebp*2 + 0x20]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x40], 0x69
push 0x1e
xor esi, esi
pop edi
mov dword [esp + 0x18], esi
mov dword [esp + 0x3c], edi
add byte [eax], al
mov eax, dword [ecx + ebx + 8]
cmp byte [ecx + ebx + 0xd], 0
add byte [ebx + eax - 0x75], dh
inc eax
cmp dh, al
inc eax
sbb byte [eax], al
je 0x45e9a7
mov eax, dword [eax + 0x38]
mov byte [eax + 0x18], 0
jmp 0x41e5f0
push dword [ebp + 0x10]
mov ecx, esi
push edi
push edx
call fcn.0041e5f9
test byte [eax + 0xf], cl
test byte [esi - 3], bh
sti
invalid
mov eax, dword [edx + 4]
push 0x4e
mov eax, dword [eax + ecx*4 - 4]
pop ecx
cmp word [eax + 8], cx
je 0x41e70f
pop ds
std
sti
invalid
jmp 0x41e6a5
sti
dec dword [edi]
mov edi, 0x6a500a40
imul ebp, ebx, 0x18
push dword [ebp - 0x10]
push 0x7a
jmp 0x45ea16
jle 0x45e9f6
or cl, byte [ebx - 0x40f00fbb]
inc eax
or dl, byte [eax + 0x6a]
jge 0x45e9a2
mov ecx, esi
into
call fcn.004735cb
jmp 0x41e755
add dword [eax], eax
add byte [eax], al
mov ecx, dword [eax + edi + 8]
cmp byte [eax + edi + 0xd], dl
je 0x45ea48
or eax, 0x498b0374
cmp byte [eax - 0x16e7af], cl
add bh, ah
push dword [ebx]
leave
mov dword [esp + 0x1c], ecx
mov ecx, dword [ecx + 0x38]
mov byte [ecx + 0x18], dl
jmp 0x41ed4f