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

Disassembly:
and al, 0xe8
sub dword [esi], eax
add byte [eax], al
mov esi, dword [ebp + 0xc]
mov ecx, esi
call fcn.0040cfa0
and dword [esi], 0
lea eax, [edi + 0x110]
mov dword [esp + 0x4c], eax
mov ecx, 0x49ccb0
lea eax, [edi + 0x102]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x58], eax
mov edx, 0x49ccb8
lea eax, [edi + 0x103]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], eax
lea eax, [edi + 0x114]
mov dword [esp + 0xb8], eax
lea eax, [edi + 0x118]
mov dword [esp + 0xc4], eax
lea eax, [edi + 0x11c]
mov dword [esp + 0xd0], eax
lea eax, [edi + 0x108]
mov dword [esp + 0xa4], ecx
mov ecx, 0x49ccec
mov dword [esp + 0xdc], eax
lea eax, [edi + 0x104]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc8], ecx
mov ecx, 0x49ccb0
mov dword [esp + 0xe8], eax
lea eax, [edi + 0x10c]
mov dword [esi + 0xc], 1
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 + 0x80], edx
mov dword [esp + 0x84], 0x49d08c
mov dword [esp + 0x88], 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 + 0xac], 0x4d18b8
mov dword [esp + 0xb0], 0x49d000
mov dword [esp + 0xb4], 0x49cfe0
mov dword [esp + 0xc0], 0x49cfb8
mov dword [esp + 0xcc], 0x49cf90
mov dword [esp + 0xd4], 0x49ccdc
mov dword [esp + 0xd8], 0x49cf70
mov dword [esp + 0xe0], edx
mov dword [esp + 0xe4], 0x49cf50
mov dword [esp + 0xec], ecx
mov dword [esp + 0xf0], 0x49cf30
mov dword [esp + 0xf4], eax
mov dword [esp + 0xf8], edx
mov dword [esp + 0xfc], 0x49cf10
lea eax, [edi + 0x91]
mov dword [esp + 0x104], ecx
mov dword [esp + 0x100], eax
mov ecx, 0x49ccd0
lea eax, [edi + 0x90]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x10c], 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 + 0x124], eax
lea eax, [edi + 0x120]
mov dword [esp + 0x130], eax
lea eax, [edi + 0x450]
mov dword [esp + 0x13c], eax
lea eax, [edi + 0x2cc]
mov dword [esp + 0x184], eax
lea eax, [edi + 0x2cd]
mov dword [esp + 0x190], eax
lea eax, [edi + 0x2c8]
mov dword [esp + 0x19c], eax
lea eax, [edi + 0x2e4]
mov dword [esp + 0x1b4], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x158], ecx
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x188], ecx
mov dword [esp + 0x194], ecx
mov ecx, dword [eax + 4]
mov dword [esp + 0x110], edx
mov dword [esp + 0x14c], 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], 0x49ce94
cmp dword [eax + 0xc], 4
mov dword [esp + 0x138], 0x49ce7c
mov dword [esp + 0x140], 0x49ce6c
mov dword [esp + 0x144], 0x49ce50
mov dword [esp + 0x148], 0x4d1996
mov dword [esp + 0x150], 0x49ce34
mov dword [esp + 0x154], 0x4d1365
mov dword [esp + 0x15c], 0x49ce18
mov dword [esp + 0x160], edx
mov dword [esp + 0x164], 0x49ce0c
mov dword [esp + 0x168], 0x49cdf0
mov dword [esp + 0x16c], edx
mov dword [esp + 0x170], 0x49cde4
mov dword [esp + 0x174], 0x49cdc4
mov dword [esp + 0x178], 0x4d1a30
mov dword [esp + 0x180], 0x49cd9c
mov dword [esp + 0x18c], 0x49cd78
mov dword [esp + 0x198], 0x49cd54
mov dword [esp + 0x1a0], 0x49cd44
mov dword [esp + 0x1a4], 0x49cd20
mov dword [esp + 0x1a8], edx
mov dword [esp + 0x1ac], 0x49cd14
mov dword [esp + 0x1b0], 0x49ccf8
mov dword [esp + 0x1b8], 0x49ccdc
jne 0x45e9f3
mov edx, dword [esp + 0x20]
push 0x2a
pop eax
cmp word [edx], ax
je 0x45edda
cmp dword [esp + 0x24], 1
je 0x45ea21
mov ecx, dword [ecx + 4]
push 0x29
call fcn.00409b47
test al, al
jne 0x45ea2c
call fcn.0040b567
mov edx, dword [esp + 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
lea eax, [edi + esi]
sar eax, 1
mov dword [esp + 0x18], eax
imul eax, eax, 0xc
push dword [esp + eax + 0x48]
push edx
call fcn.00424a28
pop ecx
test eax, eax
mov eax, dword [esp + 0x1c]
pop ecx
jns 0x41ec0a
lea edi, [eax - 1]
mov edx, dword [esp + 0x20]
cmp esi, edi
jle 0x41ebdd
jmp 0x41ec10
jg 0x45ea36
cmp esi, edi
mov dword [esp + 0x18], esi
mov esi, dword [ebp + 0xc]
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x44]
jg 0x45edda
and dword [esp + 0x14], 0
imul ecx, eax, 0xc
mov dword [esp + 0xc], ecx
mov eax, dword [esp + ecx + 0x50]
mov dword [esp + 0x20], eax
movzx edx, word [eax]
cmp edx, 0x64
jne 0x45ea3e
lea ecx, [esp + 0x18]
mov dword [esp + 0x14], 1
push ecx
lea edx, [esp + 0x18]
mov ecx, eax
call fcn.0041ed33
pop ecx
lea ecx, [esp + 0x28]
call fcn.0040cfa0
mov eax, dword [esp + 0x18]
mov dword [esp + 0x34], 1
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + ecx + 0x50]
inc dword [esp + 0x14]
movzx eax, word [edx + eax*2]
mov edx, eax
cmp dx, word [esp + 0x40]
ja 0x45edc3
je 0x45ed6e
sub eax, 0x23
je 0x45eb98
sub eax, 0x30
je 0x45eb39
sub eax, 0xf
jne 0x45eac5
mov eax, dword [esp + ecx + 0x4c]
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0xc], eax
movzx esi, byte [eax]
call fcn.0040cfa0
mov eax, dword [ebp + 0xc]
xor ecx, ecx
inc ecx
mov dword [eax + 0xc], ecx
mov dword [eax], esi
cmp dword [esp + 0x24], ecx
jbe 0x41ed05
mov eax, dword [ebp + 8]
push 0x29
inc ebp
or byte [edx + 0x29], ch
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 4]
call fcn.00409b47
test al, al
jne 0x45eb29
cmp dword [esp + 0x1c], 0
mov ecx, dword [esp + 0xc]
setne al
mov byte [ecx], al
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x20]
lea edx, [ecx + eax*2]
movzx eax, word [edx]
mov dword [esp + 0x20], edx
test ax, ax
jne 0x45ef38
lea ecx, [esp + 0x28]
call fcn.0040cfa0
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 8
dec ebp
adc al, 0x89
sbb al, 0x81
inc eax
push eax
push ecx
push dword [ebp + 0x10]
or byte [edi], cl
test byte [edi], bl
std
call [ecx - 0x17]
mov al, 0xfc
sti
cmp esi, esi
and al, 0xc
movsx edi, sp
imul ebp, ebx, 0x18
push dword [ebp - 0x10]
push 0x7a
jmp 0x45ea4e
jne 0x45ea30
push 0x7e
jmp 0x45ea4e
adc dh, cl
call fcn.00473603
jmp 0x8455e78d
and byte [edx + 2], ch
pop edx
mov dword [esp + 0x10], edx
mov ecx, edx
movzx eax, word [eax + 4]
mov cx, word [esp + esi*2 + 0x2b]
cmp ax, 0x27
je 0x45eb03
push eax
lea ecx, [esp - 0x4593c]
call fcn.00404a24
mov edx, dword [esp + 0x10]
mov eax, dword [ebx - 0x76bddf08]
push esp
and al, 0x10
mov ecx, edx
movzx eax, word [eax + edx*2]
mov cx, word [ebp + esi*2 - 0x2b]
lea eax, [ecx + 1]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x28]
lea eax, [esp - 0x4e49fe40]
push eax
call 0xe40631c
lea ecx, [esp - 0x4e49fe40]
call fcn.004098f6
jmp 0x41ece0
add esp, edi
inc dword [ebx - 0x7afffde2]
mov byte [ebx], 0x20
cld
mov eax, dword [esp + ecx + 0x4c]
mov ecx, esi
push eax
mov dword [esp + 0x10], eax
call 0x85409cd5
cmp dword [esp + 0x24], 1
jbe 0x43caed6c
mov eax, dword [ebp + 8]
push 0x29
push cs
inc eax
add al, 0x8b
dec eax
add al, 0x89
dec esp
and al, 0x14
call fcn.00409bae
test al, al
je 0x45eb73
lea ecx, [esp + 0x28]
call fcn.0040b5ce
jmp 0x45eb84
call 0x44407577
mov ecx, dword [esp + 0x10]
test dword [ecx + 8], eax
mov eax, dword [eax]
mov cx, word [ecx*4 + 0x660ce942]
lea eax, [edx - 0x17]
or al, 0x66
mov dword [ecx], eax
jmp 0x41ed6c
dec dword [ebx + 0x1c3e904]
cld
dec dword [ebx - 0x74b3f3bc]
into
mov dword [esp + 0xc], eax
push dword [eax]
call 0x85409cd5
cmp dword [esp + 0x24], 1
jbe 0x43caed6c
mov eax, dword [ebp + 8]
push 0x29
push cs
inc eax
add al, 0x8b
dec eax
add al, 0x89
dec esp
and al, 0x14
call fcn.00409bae
test al, al
je 0x45ebe3
lea ecx, [esp + 0x28]
call 0xe407577
mov eax, dword [ebx + 0xceb30f8]
call 0x44407577
mov ecx, dword [esp + 0x10]
test dword [ecx + 8], eax
push dword [eax]
mov ecx, dword [esp + 0x10]
call fcn.00406bbe
jmp 0x43caed6c
les ecx, [edi]
xchg esp, eax
ror byte [ecx - 0x17f3dbbc], 0x8c
loop 0x45ed74
and al, 0xc
call 0xe40d007
mov eax, dword [ebx - 0x36ccf308]
or eax, 0xcf8838b
xor ecx, ecx
inc ecx
mov dword [esi], eax
mov dword [esi + 0xc], ecx
cmp dword [esp + 0x24], ecx
jbe 0x4441ed6c
mov eax, dword [ebp + 8]
push 0x29
push cs
dec eax
add al, 0x8b
dec ecx
add al, 0xe8
or eax, 0x84fffaae
sal byte [edi + ecx - 0x73], 0x4c
and al, 0x28
call 0xfc40b5ce
mov dword [esp + 0x1c], eax
jmp 0x45edb8
mov ecx, 0xf1990
mov ecx, ebx
jne 0x45edcb
call fcn.0040389e
jmp 0x4441ed6c
dec edx
cli
invalid
call fcn.00403159
jmp 0x4441ed6c
dec ebp
or al, 0x89
inc esp
and al, 0xc
mov esi, dword [eax]
call 0x4440d007
mov eax, dword [ebp + 0xc]
xor ecx, ecx
inc ecx
mov dword [eax + 0xc], ecx
mov dword [eax], esi
cmp dword [esp + 0x24], ecx
jbe 0x4441ed6c
mov eax, dword [ebp + 8]
push 0x29
push cs
dec eax
add al, 0x8b
dec ecx
add al, 0xe8
mov byte [0x84fffaad], al
sal byte [ebx + ecx - 0x73], 0x4c
and al, 0x28
call fcn.0040b5ce
jmp 0x45ee1f
lea eax, [edx - 0x17]
or al, 0x89
add ecx, ebp
inc edx
invalid
jl 0x45ef49
add byte [ecx - 0x77ca9d0], cl
sbb byte [eax - 0x18], dl
push ebx
invalid
inc edx
pop ecx
cmp dword [esp + 0x24], edx
jbe 0x4441ed6c
mov eax, dword [ebp + 8]
push 0x29
push cs
dec eax
add al, 0x8b
dec ecx
add al, 0xe8
dec ecx
lodsb al, byte [esi]
cli
inc dword [eax + eax*8 + 0x4c8b2275]
and al, 0x1c
cmp ecx, dword [esp + 0x18]
jl 0x45ef7e
mov edx, dword [esp + 0x10]
mov dword [edx], ecx
jmp 0x41ed6c
lea ecx, [esp + 0x28]
call fcn.004700a8
mov eax, dword [esp + esi*2 + 0x56]
lea ecx, [esp + 0x28]
call fcn.0040b5ce
mov edx, dword [esp + 0x10]