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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xcc
mov esi, dword [esp + 0xe4]
mov eax, dword [esp + 0xe0]
lea ecx, [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x100001
mov dword [esp + 0xc], 3
mov dword [esp + 0x10], 0x4021
call fcn.00438c70
xor ebx, ebx
cmp eax, 0
jl 0x41f91f
mov dword [esp], esi
call fcn.004140f0
shl eax, 1
mov word [esp + 0xac], ax
movzx eax, ax
add eax, 2
mov word [esp + 0xae], ax
mov dword [esp + 0xb0], esi
mov dword [esp], 0x848
call fcn.00435bf0
mov dword [esp + 0x6c], eax
mov esi, dword [esp + 0x80]
mov al, byte [esp + 0x88]
mov byte [esp + 0xa4], al
mov byte [esp + 0x4b], 0x2d
mov byte [esp + 0x4c], 0x2c
mov byte [esp + 0x4d], 0x2b
mov byte [esp + 0x4e], 0x2a
movzx eax, byte [esp + 0x4b]
xor eax, 0x801b46b9
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x4b], cl
movzx eax, byte [esp + 0x4c]
xor eax, 0x801b46b8
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x4c], cl
movzx eax, byte [esp + 0x4d]
xor eax, 0x801b46bf
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x4d], cl
movzx eax, byte [esp + 0x4e]
xor eax, 0x801b46be
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x4e], cl
mov edi, dword [esp + 0x4b]
xor ebx, ebx
mov ecx, 2
cmp ebx, dword [0x444ab8]
jb 0x41f036
jmp 0x41f0f0
mov ecx, dword [0x444abc]
cmp dword [ecx + ebx*8], 0x7be1e2d2
sete dl
mov byte [esp + 0x53], dl
test dl, 1
jne 0x41f054
jmp 0x41f0dd
mov edx, dword [ecx + ebx*8 + 4]
mov ecx, 2
cmp edx, edi
je 0x41f0df
mov eax, dword [0x444ac0]
xor ecx, ecx
lea ecx, [esp + 0xc4]
lea ebp, [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0x2c
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0x848
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 1
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], 0
call fcn.00436ff0
mov ecx, 1
jmp 0x41f0df
xor ecx, ecx
test byte [esp + 0x53], 1
je 0x41f0e8
jmp 0x41f0f0
add ebx, 1
jmp 0x41f024
cmp ecx, 2
je 0x41f0f7
mov edi, eax
xor ebx, ebx
cmp edi, 0
jl 0x41f7de
mov dword [esp + 0x64], 0
xor ebx, ebx
xor esi, esi
mov eax, dword [esp + 0x6c]
jmp 0x41f114
mov edi, dword [eax + 0x3c]
shr edi, 1
mov ecx, eax
add ecx, 0x38
mov dword [esp + 0xc0], ecx
mov dword [esp + 0x68], eax
mov eax, dword [eax + 0x38]
and eax, 0x400
cmp eax, 0
jne 0x41f3d5
mov al, byte [esp + 0x7c]
mov byte [esp + 0x8c], al
mov byte [esp + 0x43], 0x84
mov byte [esp + 0x44], 0xab
mov byte [esp + 0x45], 0xac
mov byte [esp + 0x46], 0xad
movzx ecx, byte [esp + 0x43]
xor ecx, 0x7ac0e87a
mov eax, ecx
and eax, 0x29f8bc2f
mov edx, ecx
and edx, 0xd60743d0
mov dword [esp + 0x58], ebx
mov ebx, ecx
xor ebx, 0x29f8bc2f
add ecx, ebx
sub ecx, edx
add eax, ecx
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x43], al
movzx ecx, byte [esp + 0x44]
xor ecx, 0x7ac0e87b
mov eax, ecx
and eax, 0x29f8bc2f
mov edx, ecx
and edx, 0xd60743d0
mov ebx, ecx
xor ebx, 0x29f8bc2f
add ecx, ebx
sub ecx, edx
add eax, ecx
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x44], al
movzx ecx, byte [esp + 0x45]
xor ecx, 0x7ac0e87c
mov eax, ecx
and eax, 0x29f8bc2f
mov edx, ecx
and edx, 0xd60743d0
mov ebx, ecx
xor ebx, 0x29f8bc2f
add ecx, ebx
sub ecx, edx
add eax, ecx
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x45], al
movzx ecx, byte [esp + 0x46]
xor ecx, 0x7ac0e87d
mov eax, ecx
and eax, 0x29f8bc2f
mov edx, ecx
and edx, 0xd60743d0
mov ebx, ecx
xor ebx, 0x29f8bc2f
add ecx, ebx
mov ebx, dword [esp + 0x58]
sub ecx, edx
add eax, ecx
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x46], al
mov ebp, dword [esp + 0x68]
add ebp, 0x44
lea eax, [esp + 0x43]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.0041f930
cmp eax, 0
je 0x41f3d5
mov dword [esp + 0x54], esi
mov al, byte [esp + 0x78]
mov byte [esp + 0x90], al
mov byte [esp + 0x5e], 0x9a
mov byte [esp + 0x5f], 0xf5
mov byte [esp + 0x60], 0x98
mov byte [esp + 0x61], 0xf7
mov byte [esp + 0x62], 0xf8
mov byte [esp + 0x63], 0xf9
xor esi, esi
cmp esi, 6
jae 0x41f2f4
movzx eax, byte [esp + esi + 0x5e]
mov edx, 0xa82a32ab
sub edx, esi
or edx, eax
xor eax, 0xffffffff
mov ebx, esi
add ebx, 0x54
or ebx, eax
and edx, ebx
mov eax, edx
add eax, 0xa1
or eax, 1
mov ebx, edx
add ebx, 0xa1
mov ecx, edx
add ecx, 0xa1
or ebx, ecx
or ebx, 1
add eax, 0x5f
add edx, ebx
mov ebx, dword [esp + 0x58]
sub eax, edx
mov byte [esp + esi + 0x5e], al
mov eax, esi
xor eax, 0xfffffffe
mov ecx, esi
or ecx, 1
and ecx, eax
or esi, 1
add esi, ecx
jmp 0x41f294
lea eax, [esp + 0x5e]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.0041f930
cmp eax, 0
jne 0x41f316
mov esi, dword [esp + 0x54]
jmp 0x41f3d5
mov eax, edi
add eax, 0xb5e9cc0b
add eax, 1
sub eax, 0xb5e9cc0b
mov ecx, 2
mul ecx
seto dl
mov ecx, 0xffffffff
test dl, 1
mov esi, dword [esp + 0x54]
jne 0x41f33f
mov ecx, eax
mov dword [esp], ecx
call fcn.004082c0
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov edi, eax
call fcn.00413d30
mov word [eax], 0
mov eax, dword [esp + 0x68]
mov eax, dword [eax + 0x28]
mov ecx, dword [esp + 0xc0]
mov edx, dword [ecx]
mov ecx, edx
xor ecx, 0x10
xor ecx, 0xffffffff
or edx, 0x10
and edx, ecx
xor ecx, ecx
cmp edx, 0
setne cl
mov edx, dword [esp + 0xec]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp], edi
and ecx, 1
mov dword [esp + 4], ecx
call dword [esp + 0xe8]
and al, 1
movzx eax, al
and bl, 1
movzx ecx, bl
mov edx, ecx
xor edx, 0xffffffff
xor ecx, 0xffffffff
or edx, ecx
and eax, eax
xor eax, 0xffffffff
and eax, edx
xor eax, 0xffffffff
cmp eax, 0
setne bl
and bl, 1
mov dword [esp], edi
call fcn.004082d0
jmp 0x41f3d5
cmp esi, 0
je 0x41f3e0
mov edi, dword [esp + 0x64]
jmp 0x41f40e
mov dword [esp], 0x10900
call fcn.00435bf0
mov edi, eax
cmp edi, 0
sete al
test al, 1
jne 0x41f3fa
jmp 0x41f40a
xor esi, esi
mov eax, 2
mov edi, dword [esp + 0x68]
jmp 0x41f7d0
mov esi, edi
jmp 0x41f40e
cmp edi, esi
jne 0x41f7b7
mov dword [esp + 0x54], esi
mov al, byte [esp + 0x74]
mov byte [esp + 0x94], al
mov byte [esp + 0x3f], 0x66
mov byte [esp + 0x40], 0x6e
mov byte [esp + 0x41], 0x69
mov byte [esp + 0x42], 0x69
movzx eax, byte [esp + 0x3f]
mov edx, eax
add edx, 1
mov ecx, eax
xor ecx, 0xffffffff
or ecx, 0x673782d6
add ecx, edx
or eax, 0x673782d6
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
or esi, edx
sub ecx, eax
add esi, ecx
mov eax, 0xc643e94e
sub eax, esi
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x3f], al
movzx eax, byte [esp + 0x40]
mov edx, eax
add edx, 1
mov ecx, eax
xor ecx, 0xffffffff
or ecx, 0x673782d7
add ecx, edx
or eax, 0x673782d7
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
or esi, edx
sub ecx, eax
add esi, ecx
mov eax, 0xc643e94e
sub eax, esi
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x40], al
movzx eax, byte [esp + 0x41]
mov edx, eax
add edx, 1
mov ecx, eax
xor ecx, 0xffffffff
or ecx, 0x673782d8
add ecx, edx
or eax, 0x673782d8
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
or esi, edx
sub ecx, eax
add esi, ecx
mov eax, 0xc643e94e
sub eax, esi
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x41], al
movzx eax, byte [esp + 0x42]
mov edx, eax
add edx, 1
mov ecx, eax
xor ecx, 0xffffffff
or ecx, 0x673782d9
add ecx, edx
or eax, 0x673782d9
mov edx, ecx
xor edx, 0xffffffff
mov esi, eax
or esi, edx
sub ecx, eax
add esi, ecx
mov eax, 0xc643e94e
sub eax, esi
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
mov byte [esp + 0x42], al
mov eax, dword [esp + 0x3f]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0xb8], eax
mov al, byte [esp + 0x84]
mov byte [esp + 0xa8], al
mov byte [esp + 0x47], 0x2d
mov byte [esp + 0x48], 0x2c
mov byte [esp + 0x49], 0x2b
mov byte [esp + 0x4a], 0x2a
movzx eax, byte [esp + 0x47]
xor eax, 0x801b46b9
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x47], cl
movzx eax, byte [esp + 0x48]
xor eax, 0x801b46b8
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x48], cl
movzx eax, byte [esp + 0x49]
xor eax, 0x801b46bf
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x49], cl
movzx eax, byte [esp + 0x4a]
xor eax, 0x801b46be
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x4a], cl
mov esi, dword [esp + 0x47]
xor ebp, ebp
mov ecx, 2
cmp ebp, dword [0x444ab8]
jb 0x41f62c
jmp 0x41f6f6
mov dword [esp + 0x58], ebx
mov ecx, dword [0x444abc]
cmp dword [ecx + ebp*8], 0x7be1e2d2
sete bl
test bl, 1
jne 0x41f64a
jmp 0x41f6dd
mov edx, dword [ecx + ebp*8 + 4]
mov ecx, 2
cmp edx, esi
je 0x41f6df
mov eax, dword [0x444ac0]
xor ecx, ecx
lea ecx, [esp + 0xc4]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0x2c
mov eax, dword [esp + 0xb8]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edi
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 0
lea eax, [esp + 0xac]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], 0
call fcn.00436ff0
mov ecx, 1
jmp 0x41f6df
xor ecx, ecx
test bl, 1
je 0x41f6ea
mov ebx, dword [esp + 0x58]
jmp 0x41f6f6
add ebp, 1
mov ebx, dword [esp + 0x58]
jmp 0x41f61a
cmp ecx, 2
je 0x41f6fd
mov esi, eax
mov al, byte [esp + 0x70]
mov byte [esp + 0x98], al
mov byte [esp + 0x3b], 0x6f
mov byte [esp + 0x3c], 0x6b
mov byte [esp + 0x3d], 0x6c
mov byte [esp + 0x3e], 0xed
mov al, byte [esp + 0x3b]
xor al, 0xba
add al, 0x30
mov byte [esp + 0x3b], al
mov al, byte [esp + 0x3c]
xor al, 0xbb
add al, 0x30
mov byte [esp + 0x3c], al
mov al, byte [esp + 0x3d]
xor al, 0xbc
add al, 0x30
mov byte [esp + 0x3d], al
mov al, byte [esp + 0x3e]
xor al, 0xbd
add al, 0x30
mov byte [esp + 0x3e], al
mov eax, dword [esp + 0x3b]
cmp esi, eax
jne 0x41f788
xor eax, eax
mov edx, edi
jmp 0x41f75a
mov ecx, edx
mov esi, dword [ecx]
cmp esi, 0
je 0x41f771
shr esi, 2
shl esi, 2
mov edx, ecx
add edx, esi
mov eax, ecx
jmp 0x41f75a
cmp eax, 0
setne cl
test cl, 1
jne 0x41f77e
jmp 0x41f784
mov dword [eax], 0
xor esi, esi
jmp 0x41f788
cmp esi, 0
jge 0x41f7a0
mov esi, dword [esp + 0x54]
mov dword [esp], esi
call fcn.00435c10
mov eax, 2
jmp 0x41f7a8
xor eax, eax
mov esi, dword [esp + 0x54]
jmp 0x41f7a8
cmp eax, 0
je 0x41f7b7
mov dword [esp + 0x64], edi
mov edi, dword [esp + 0x68]
jmp 0x41f7d0
mov eax, dword [edi]
cmp eax, 0
je 0x41f7c8
mov ecx, edi
add ecx, eax
mov dword [esp + 0x64], ecx
jmp 0x41f7ce
mov dword [esp + 0x64], esi
jmp 0x41f7ce
xor eax, eax
test eax, eax
mov eax, edi
je 0x41f114
jmp 0x41f7dc
jmp 0x41f7de
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
call fcn.00435c10
mov edx, dword [esp + 0x80]
mov al, byte [esp + 0x9c]
mov byte [esp + 0xa0], al
mov byte [esp + 0x4f], 0x2d
mov byte [esp + 0x50], 0x2c
mov byte [esp + 0x51], 0x2b
mov byte [esp + 0x52], 0x2a
movzx eax, byte [esp + 0x4f]
xor eax, 0x801b46b9
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x4f], cl
movzx eax, byte [esp + 0x50]
xor eax, 0x801b46b8
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x50], cl
movzx eax, byte [esp + 0x51]
xor eax, 0x801b46bf
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x51], cl
movzx eax, byte [esp + 0x52]
xor eax, 0x801b46be
xor eax, 0x2039cf9b
mov ecx, eax
add ecx, 0xef
shl eax, 1
and eax, 2
xor eax, 2
xor ecx, 1
add ecx, eax
mov byte [esp + 0x52], cl
mov edi, dword [esp + 0x4f]
xor ebp, ebp
cmp ebp, dword [0x444ab8]
jb 0x41f8c3
jmp 0x41f91f
mov esi, ebx
mov eax, dword [0x444abc]
cmp dword [eax + ebp*8], 0xb430e561
sete bl
test bl, 1
jne 0x41f8db
jmp 0x41f90f
mov eax, dword [eax + ebp*8 + 4]
cmp eax, edi
je 0x41f90f
mov ecx, dword [0x444ac0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], edx
mov dword [esp + 0xb4], edx
call fcn.00436ff0
mov edx, dword [esp + 0xb4]
test bl, 1
jne 0x41f91b
add ebp, 1
mov ebx, esi
jmp 0x41f8b9
mov ebx, esi
jmp 0x41f91f
and bl, 1
movzx eax, bl
add esp, 0xcc
pop esi
pop edi
pop ebx
pop ebp
ret