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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xe4
mov esi, dword [esp + 0xfc]
mov eax, dword [esp + 0xf8]
lea ecx, [esp + 0x74]
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.0043db20
xor ebx, ebx
cmp eax, 0
jl 0x41fd3a
mov dword [esp], esi
call fcn.00417080
shl eax, 1
mov word [esp + 0xc4], ax
movzx eax, ax
add eax, 2
mov word [esp + 0xc6], ax
mov dword [esp + 0xc8], esi
mov dword [esp], 0x848
call fcn.00436f00
mov dword [esp + 0x50], eax
mov esi, dword [esp + 0x74]
mov al, byte [esp + 0x84]
mov byte [esp + 0xb0], al
mov byte [esp + 0x88], 0x4b
mov byte [esp + 0x89], 0x4a
mov byte [esp + 0x8a], 0x55
mov byte [esp + 0x8b], 0x54
mov eax, 4
mov byte [esp + eax + 0x88], 0
add eax, 1
cmp eax, 7
jne 0x41f599
xor eax, eax
cmp eax, 7
jae 0x41f5f3
movzx edx, byte [esp + eax + 0x88]
mov edi, edx
xor edi, 0xffffffff
mov ebx, eax
add ebx, 0x8f
mov ecx, 0x71
sub ecx, eax
or ecx, edi
add ecx, ebx
mov edi, 0x71
sub edi, eax
mov ebx, 0x71
sub ebx, eax
or edi, ebx
and edi, edx
or ecx, edi
add cl, 0x3a
mov byte [esp + eax + 0x88], cl
add eax, 1
jmp 0x41f5ab
mov edi, dword [esp + 0x88]
xor ebp, ebp
mov ecx, 2
cmp ebp, dword [0x448e64]
jb 0x41f60e
jmp 0x41f6c6
mov edx, dword [0x448e68]
cmp dword [edx + ebp*8], 0x557d0c65
sete bl
xor ecx, ecx
mov byte [esp + 0x3b], bl
test bl, 1
jne 0x41f62e
jmp 0x41f6b5
mov edx, dword [edx + ebp*8 + 4]
mov ecx, 2
cmp edx, edi
je 0x41f6b5
mov eax, dword [0x448e6c]
xor ecx, ecx
lea ecx, [esp + 0xdc]
lea ebx, [esp + 0xc4]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0xb
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 + 0x50]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0x848
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 1
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], 0
call fcn.0043a3b0
mov ecx, 1
test byte [esp + 0x3b], 1
je 0x41f6be
jmp 0x41f6c6
add ebp, 1
jmp 0x41f5fc
cmp ecx, 2
je 0x41f6cd
mov edi, eax
xor ebx, ebx
cmp edi, 0
jl 0x41fc2a
mov dword [esp + 0x48], 0
xor ebx, ebx
xor esi, esi
mov eax, dword [esp + 0x50]
jmp 0x41f6ea
mov dword [esp + 0x3c], esi
mov edi, dword [eax + 0x3c]
shr edi, 1
mov esi, eax
add esi, 0x38
mov dword [esp + 0x4c], eax
mov eax, dword [eax + 0x38]
and eax, 0x400
cmp eax, 0
jne 0x41f911
mov al, byte [esp + 0x68]
mov byte [esp + 0x90], al
mov byte [esp + 0x6c], 0x7e
mov byte [esp + 0x6d], 0x21
mov byte [esp + 0x6e], 0x22
mov byte [esp + 0x6f], 0x23
mov eax, 4
mov byte [esp + eax + 0x6c], 0
add eax, 1
cmp eax, 8
jne 0x41f731
mov dword [esp + 0x40], ebx
xor eax, eax
cmp eax, 8
jae 0x41f783
mov cl, byte [esp + eax + 0x6c]
movzx ebx, cl
mov ebp, eax
shl ebp, 1
and ebp, 0x3d1dff70
mov edx, eax
xor edx, 0x1e8effb8
add edx, ebp
mov ebp, edx
and ebp, ebx
shl ebp, 1
sub edx, ebp
add dl, cl
add dl, 0xa8
mov byte [esp + eax + 0x6c], dl
mov ecx, eax
shl ecx, 1
and ecx, 2
xor eax, 1
add eax, ecx
jmp 0x41f744
mov ebp, dword [esp + 0x4c]
add ebp, 0x44
mov ebx, dword [esp + 0x40]
lea eax, [esp + 0x6c]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.0041fd50
cmp eax, 0
je 0x41f911
mov al, byte [esp + 0x64]
mov byte [esp + 0x94], al
mov byte [esp + 0xb8], 0x7e
mov byte [esp + 0xb9], 0x8b
mov byte [esp + 0xba], pe_nt_image_headers32
mov byte [esp + 0xbb], 0x89
mov byte [esp + 0xbc], 0x88
mov byte [esp + 0xbd], 0x87
mov eax, 6
mov byte [esp + eax + 0xb8], 0
add eax, 1
cmp eax, 9
jne 0x41f7eb
xor eax, eax
cmp eax, 9
jae 0x41f830
mov dl, byte [esp + eax + 0xb8]
mov ebx, eax
xor ebx, 0x9c
mov ecx, eax
or ecx, 0x63
and ecx, ebx
mov ebx, eax
or ebx, 0x63
add ecx, ebx
xor cl, dl
add cl, 0x77
mov byte [esp + eax + 0xb8], cl
add eax, 1
jmp 0x41f7fd
lea eax, [esp + 0xb8]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.0041fd50
cmp eax, 0
mov ebx, dword [esp + 0x40]
jne 0x41f859
mov esi, dword [esp + 0x3c]
jmp 0x41f915
mov eax, edi
add eax, 1
mov ecx, 2
mul ecx
seto dl
mov ecx, 0xffffffff
test dl, 1
jne 0x41f874
mov ecx, eax
mov dword [esp], ecx
call fcn.0040c880
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov edi, eax
call fcn.00416cd0
mov word [eax], 0
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x28]
mov edx, dword [esi]
and edx, 0x10
xor eax, eax
cmp edx, 0
setne al
mov edx, dword [esp + 0x104]
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov dword [esp], edi
and eax, 1
mov dword [esp + 4], eax
call dword [esp + 0x100]
and al, 1
movzx ecx, al
and bl, 1
movzx eax, bl
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, eax
and edx, 0xc1779161
mov esi, ecx
and esi, 0xc1779161
or edx, 0
or esi, 0
xor edx, esi
or eax, ecx
xor eax, 0xffffffff
and eax, 0xffffffff
or edx, eax
cmp edx, 0
setne bl
and bl, 1
mov dword [esp], edi
call fcn.0040c890
mov esi, dword [esp + 0x3c]
jmp 0x41f915
mov esi, dword [esp + 0x3c]
cmp esi, 0
je 0x41f920
mov edi, dword [esp + 0x48]
jmp 0x41f947
mov dword [esp], 0x10900
call fcn.00436f00
mov edi, eax
cmp edi, 0
jne 0x41f943
xor esi, esi
mov eax, 2
mov edi, dword [esp + 0x4c]
jmp 0x41fc1c
mov esi, edi
jmp 0x41f947
cmp edi, esi
jne 0x41fc03
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
mov al, byte [esp + 0x60]
mov byte [esp + 0x98], al
mov byte [esp + 0x44], pe_nt_image_headers32
mov byte [esp + 0x45], 0x10
mov byte [esp + 0x46], 0x69
mov byte [esp + 0x47], 0x65
xor eax, eax
cmp eax, 4
jae 0x41f9ba
movzx edx, byte [esp + eax + 0x44]
mov esi, eax
add esi, 0xc8e2730b
mov ebx, edx
xor ebx, 0xffffffff
mov ecx, esi
and ecx, ebx
shl esi, 1
mov ebx, eax
add ebx, 0xa
sub ebx, esi
and ebx, edx
or ecx, ebx
add cl, 0xc9
mov byte [esp + eax + 0x44], cl
mov ecx, eax
or ecx, 1
mov edx, eax
xor edx, 0xfffffffe
and ecx, edx
or eax, 1
add eax, ecx
jmp 0x41f978
mov eax, dword [esp + 0x44]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0xd4], eax
mov al, byte [esp + 0x78]
mov byte [esp + 0xb4], al
mov byte [esp + 0x7c], 0x4b
mov byte [esp + 0x7d], 0x4a
mov byte [esp + 0x7e], 0x55
mov byte [esp + 0x7f], 0x54
mov eax, 4
mov byte [esp + eax + 0x7c], 0
add eax, 1
cmp eax, 7
jne 0x41f9f4
xor eax, eax
mov ebx, dword [esp + 0x40]
cmp eax, 7
jae 0x41fa4d
movzx edx, byte [esp + eax + 0x7c]
mov esi, edx
xor esi, 0xffffffff
mov ebx, eax
add ebx, 0x8f
mov ecx, 0x71
sub ecx, eax
or ecx, esi
add ecx, ebx
mov esi, 0x71
sub esi, eax
mov ebx, 0x71
sub ebx, eax
or esi, ebx
mov ebx, dword [esp + 0x40]
and esi, edx
or ecx, esi
add cl, 0x3a
mov byte [esp + eax + 0x7c], cl
add eax, 1
jmp 0x41fa07
mov esi, dword [esp + 0x7c]
xor ebp, ebp
mov ecx, 2
cmp ebp, dword [0x448e64]
jb 0x41fa65
jmp 0x41fb38
mov eax, esi
mov esi, dword [0x448e68]
cmp dword [esi + ebp*8], 0x557d0c65
sete dl
xor ecx, ecx
mov byte [esp + 0x3a], dl
test dl, 1
jne 0x41fa89
mov esi, eax
jmp 0x41fb27
mov edx, dword [esi + ebp*8 + 4]
mov ecx, 2
mov esi, eax
cmp edx, esi
je 0x41fb27
mov eax, dword [0x448e6c]
xor ecx, ecx
lea ecx, [esp + 0xdc]
lea ebx, [esp + 0xc4]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0xb
mov eax, dword [esp + 0xd4]
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 + 0xd8]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x34], 0
call fcn.0043a3b0
mov dword [esp + 0xcc], eax
mov ecx, 1
test byte [esp + 0x3a], 1
je 0x41fb30
jmp 0x41fb38
add ebp, 1
jmp 0x41fa53
cmp ecx, 2
je 0x41fb44
mov esi, dword [esp + 0xcc]
mov al, byte [esp + 0x54]
mov byte [esp + 0x9c], al
mov byte [esp + 0x58], 0xad
mov byte [esp + 0x59], 0xad
mov byte [esp + 0x5a], 0xac
mov byte [esp + 0x5b], 0x2f
mov eax, 4
mov byte [esp + eax + 0x58], 0
add eax, 1
cmp eax, 6
jne 0x41fb68
xor eax, eax
cmp eax, 6
jae 0x41fb93
mov cl, byte [esp + eax + 0x58]
mov dl, al
add dl, 0x1d
xor dl, cl
add dl, 0x6f
mov byte [esp + eax + 0x58], dl
add eax, 1
jmp 0x41fb77
mov eax, dword [esp + 0x58]
cmp esi, eax
jne 0x41fbd4
xor eax, eax
mov edx, edi
jmp 0x41fba1
mov ecx, edx
mov esi, dword [ecx]
cmp esi, 0
je 0x41fbb8
shr esi, 2
shl esi, 2
mov edx, ecx
add edx, esi
mov eax, ecx
jmp 0x41fba1
jmp 0x41fd4b
cmp eax, 0
setne cl
test cl, 1
jne 0x41fbca
jmp 0x41fbd0
mov dword [eax], 0
xor esi, esi
jmp 0x41fbd4
cmp esi, 0
jge 0x41fbec
mov esi, dword [esp + 0x3c]
mov dword [esp], esi
call fcn.00436f60
mov eax, 2
jmp 0x41fbf4
xor eax, eax
mov esi, dword [esp + 0x3c]
jmp 0x41fbf4
cmp eax, 0
je 0x41fc03
mov dword [esp + 0x48], edi
mov edi, dword [esp + 0x4c]
jmp 0x41fc1c
mov eax, dword [edi]
cmp eax, 0
je 0x41fc14
mov ecx, edi
add ecx, eax
mov dword [esp + 0x48], ecx
jmp 0x41fc1a
mov dword [esp + 0x48], esi
jmp 0x41fc1a
xor eax, eax
test eax, eax
mov eax, edi
je 0x41f6ea
jmp 0x41fc28
jmp 0x41fc2a
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call fcn.00436f60
mov eax, dword [esp + 0x74]
mov dword [esp + 0xd0], eax
mov al, byte [esp + 0xa0]
mov byte [esp + 0xac], al
mov byte [esp + 0xa4], 0x4b
mov byte [esp + 0xa5], 0x4a
mov byte [esp + 0xa6], 0x55
mov byte [esp + 0xa7], 0x54
mov eax, 4
mov byte [esp + eax + 0xa4], 0
add eax, 1
cmp eax, 7
jne 0x41fc74
xor eax, eax
cmp eax, 7
jae 0x41fcd2
movzx edx, byte [esp + eax + 0xa4]
mov edi, edx
xor edi, 0xffffffff
mov esi, ebx
mov ebx, eax
add ebx, 0x8f
mov ecx, 0x71
sub ecx, eax
or ecx, edi
add ecx, ebx
mov edi, 0x71
sub edi, eax
mov ebx, 0x71
sub ebx, eax
or edi, ebx
mov ebx, esi
and edi, edx
or ecx, edi
add cl, 0x3a
mov byte [esp + eax + 0xa4], cl
add eax, 1
jmp 0x41fc86
mov edi, dword [esp + 0xa4]
xor ebp, ebp
cmp ebp, dword [0x448e64]
jb 0x41fce5
jmp 0x41fd3a
mov esi, ebx
mov eax, dword [0x448e68]
cmp dword [eax + ebp*8], 0xb62b8d10
sete bl
test bl, 1
jne 0x41fcfd
jmp 0x41fd2a
mov eax, dword [eax + ebp*8 + 4]
cmp eax, edi
je 0x41fd2a
mov ecx, dword [0x448e6c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov eax, dword [esp + 0xd0]
mov dword [esp + 0xc], eax
call fcn.0043a3b0
test bl, 1
je 0x41fd33
mov ebx, esi
jmp 0x41fd3a
add ebp, 1
mov ebx, esi
jmp 0x41fcdb
and bl, 1
movzx eax, bl
add esp, 0xe4
pop esi
pop edi
pop ebx
pop ebp
ret
jmp 0x41fbbd