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

Disassembly:
mov eax, 0x1088
call fcn.0049d830
mov eax, dword [esp + 0x1098]
push ebx
mov ebx, dword [esp + 0x1090]
push esi
xor esi, esi
push edi
xor edi, edi
mov dword [esp + 0x14], 1
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
cmp eax, esi
jne 0x414f40
mov eax, dword [esp + 0x10a0]
cmp eax, esi
je 0x414f34
mov dword [eax], 0x63
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x1088
ret
mov dword [eax], esi
mov eax, dword [esp + 0x10a0]
cmp eax, esi
je 0x414f4f
mov dword [eax], esi
mov eax, dword [esp + 0x10a8]
push ebp
cmp eax, esi
jne 0x414f65
mov eax, 0x10
jmp 0x415633
mov dword [eax], esi
mov eax, dword [esp + 0x10b0]
cmp eax, esi
jne 0x414f7e
mov eax, 0x4bc460
mov dword [esp + 0x10b0], eax
mov ebp, dword [esp + 0x10a0]
lea ecx, [eax + 0x100]
lea edx, [eax + 0x200]
mov dword [esp + 0x2c], eax
add eax, 0x340
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
test ebp, 0xd8038580
je 0x414fb8
mov eax, 0x11
jmp 0x415624
cmp byte [ebx], 0x28
jne 0x415124
jmp 0x414fc5
xor esi, esi
cmp byte [ebx + edi + 1], 0x2a
jne 0x415124
push 5
lea esi, [edi + ebx + 2]
push str.UTF8_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x414ff6
add edi, 7
or ebp, 0x800
jmp 0x415118
push 4
push str.UCP_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x415018
add edi, 6
or ebp, 0x20000000
jmp 0x415118
push 0xd
push str.NO_START_OPT_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x41503a
add edi, 0xf
or ebp, 0x4000000
jmp 0x415118
push 3
push 0x4acfa0
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x415061
add edi, 5
mov eax, 0x100000
and ebp, 0xff8fffff
jmp 0x415116
push 3
push 0x4acf9c
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x415088
add edi, 5
mov eax, 0x200000
and ebp, 0xff8fffff
jmp 0x415116
push 5
push str.CRLF_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x4150ac
add edi, 7
mov eax, 0x300000
and ebp, 0xff8fffff
jmp 0x415116
push 4
push str.ANY_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x4150d0
add edi, 6
mov eax, 0x400000
and ebp, 0xff8fffff
jmp 0x415116
push 8
push str.ANYCRLF_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x4150f4
add edi, 0xa
mov eax, 0x500000
and ebp, 0xff8fffff
jmp 0x415116
push 0xc
push str.BSR_ANYCRLF_
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x41515f
add edi, 0xe
mov eax, 0x800000
and ebp, 0xfe7fffff
or ebp, eax
cmp byte [edi + ebx], 0x28
je 0x414fc3
xor esi, esi
mov eax, ebp
shr eax, 0xb
and eax, 1
mov dword [esp + 0x24], eax
je 0x41517d
test ebp, 0x2000
jne 0x41517d
mov eax, dword [esp + 0x10ac]
push eax
push 0xffffffffffffffff
push ebx
call fcn.00423aa0
add esp, 0xc
mov dword [esp + 0x10], eax
cmp eax, esi
je 0x41517d
mov eax, 0x2c
jmp 0x415633
push 0xc
push 0x4acf60
push esi
call sub.MSVCRT.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x415122
add edi, 0xe
mov eax, 0x1000000
jmp 0x415110
mov ecx, ebp
and ecx, 0x1800000
cmp ecx, 0x1800000
jne 0x415197
mov eax, 0x38
jmp 0x415624
mov eax, ebp
and eax, 0x700000
mov ecx, 2
cmp eax, 0x300000
jg 0x4151fb
je 0x4151f4
cmp eax, esi
je 0x4151be
cmp eax, 0x100000
je 0x4151ed
cmp eax, 0x200000
jne 0x415209
mov eax, 0xa
mov dword [esp + 0x8c], esi
cmp eax, 0xff
jle 0x415229
mov edx, eax
sar edx, 8
mov dword [esp + 0x90], ecx
mov byte [esp + 0x94], dl
mov byte [esp + 0x95], al
jmp 0x41523b
mov eax, 0xd
jmp 0x4151c3
mov eax, 0xd0a
jmp 0x4151c3
cmp eax, 0x400000
je 0x41521c
cmp eax, 0x500000
je 0x415213
mov eax, 0x38
jmp 0x415624
mov dword [esp + 0x8c], ecx
jmp 0x41523b
mov dword [esp + 0x8c], 1
jmp 0x41523b
mov dword [esp + 0x90], 1
mov byte [esp + 0x94], al
lea eax, [esp + 0x98]
mov edx, eax
mov ecx, eax
mov dword [esp + 0x40], eax
mov eax, ebx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
mov dword [esp + 0x68], esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], ecx
mov dword [esp + 0x60], 0x1000
mov dword [esp + 0x44], ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x415280
sub eax, edx
add eax, ebx
mov dword [esp + 0x48], eax
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x30]
push edx
push esi
lea eax, [esp + 0xa4]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x38]
push ecx
push esi
push esi
push esi
push esi
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x48]
push ecx
add edi, ebx
push ebp
mov dword [esp + 0xb4], esi
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], ebp
mov dword [esp + 0xb0], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x48], edi
mov byte [esp + 0xcc], 0x7d
call fcn.00414420
mov eax, dword [esp + 0x44]
add esp, 0x34
cmp eax, esi
jne 0x415624
mov ebp, dword [esp + 0x18]
cmp ebp, 0x10000
jle 0x41531e
mov eax, 0x14
jmp 0x415624
mov edx, dword [esp + 0x5c]
imul edx, dword [esp + 0x58]
lea ebx, [edx + ebp + 0x28]
push ebx
call dword [0x59b57c]
mov esi, eax
add esp, 4
test esi, esi
jne 0x415343
lea eax, [esi + 0x15]
jmp 0x41561d
mov dword [esi + 4], ebx
mov dword [esi], 0x50435245
mov eax, dword [esp + 0x78]
mov dword [esi + 8], eax
movzx ecx, word [esp + 0x7c]
mov word [esi + 0xc], cx
xor edx, edx
mov word [esi + 0xe], dx
xor eax, eax
mov dword [esi + 0x14], eax
mov edx, 0x28
mov word [esi + 0x18], dx
mov ax, word [esp + 0x5c]
mov word [esi + 0x1a], ax
movzx ecx, word [esp + 0x58]
mov eax, dword [esp + 0x10b0]
mov word [esi + 0x1c], cx
mov ecx, eax
xor edx, edx
mov word [esi + 0x1e], dx
sub ecx, 0x4bc460
neg ecx
sbb ecx, ecx
and ecx, eax
mov dword [esi + 0x20], ecx
xor ecx, ecx
mov dword [esi + 0x24], ecx
mov edx, dword [esp + 0x64]
mov dword [esp + 0x68], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x58], ecx
movzx eax, word [esi + 0x18]
add eax, esi
mov dword [esp + 0x54], eax
movzx edx, word [esi + 0x1a]
movzx ebx, word [esi + 0x1c]
imul ebx, edx
push ecx
add ebx, eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x54], eax
lea edx, [esp + 0x30]
push edx
push ecx
lea eax, [esp + 0x2c]
push eax
lea edx, [esp + 0x38]
push edx
push ecx
push ecx
push ecx
push ecx
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], ecx
mov dword [esp + 0x70], ecx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x68], ebx
push ecx
lea edx, [esp + 0x48]
mov byte [ebx], 0x7d
mov eax, dword [esi + 8]
push edx
push eax
mov dword [esp + 0x48], edi
mov dword [esp + 0x50], ebx
call fcn.00414420
movzx ecx, word [esp + 0x98]
mov word [esi + 0x10], cx
mov dx, word [esp + 0xa0]
mov word [esi + 0x12], dx
mov eax, dword [esp + 0xb0]
or eax, 1
add esp, 0x34
mov word [esi + 0xc], ax
cmp dword [esp + 0x84], 0
je 0x415468
mov dword [esp + 0x20], 0xffffffff
cmp dword [esp + 0x10], 0
jne 0x415480
mov ecx, dword [esp + 0x14]
cmp byte [ecx], 0
je 0x415480
mov dword [esp + 0x10], 0x16
mov eax, dword [esp + 0x1c]
mov byte [eax], 0
inc eax
sub eax, ebx
cmp eax, ebp
jle 0x415496
mov dword [esp + 0x10], 0x17
mov ecx, dword [esp + 0x50]
cmp ecx, dword [esp + 0x3c]
jbe 0x415517
xor eax, eax
or edx, 0xffffffff
cmp dword [esp + 0x10], eax
jne 0x415517
jmp 0x4154b0
cmp ecx, dword [esp + 0x3c]
jbe 0x415517
sub ecx, 2
mov dword [esp + 0x50], ecx
movzx ebp, byte [ecx + 1]
movzx ecx, byte [ecx]
shl ecx, 8
or ebp, ecx
movzx edi, byte [ebx + ebp]
movzx ecx, byte [ebx + ebp + 1]
shl edi, 8
or edi, ecx
cmp edi, edx
je 0x4154ec
mov edx, dword [esp + 0x24]
push edi
push edx
push ebx
call fcn.0040e730
add esp, 0xc
mov edx, edi
test eax, eax
je 0x41550f
mov ecx, eax
sub ecx, ebx
sar ecx, 8
mov byte [ebx + ebp], cl
mov cl, al
sub cl, bl
mov byte [ebx + ebp + 1], cl
cmp dword [esp + 0x10], 0
jne 0x415517
mov ecx, dword [esp + 0x50]
jmp 0x4154b0
mov dword [esp + 0x10], 0x35
cmp dword [esp + 0x60], 0x1000
jle 0x41552f
mov edx, dword [esp + 0x3c]
push edx
call dword [0x59b580]
add esp, 4
cmp dword [esp + 0x10], 0
jne 0x415548
mov ax, word [esi + 0x12]
cmp ax, word [esi + 0x10]
jbe 0x415548
mov dword [esp + 0x10], 0xf
cmp dword [esp + 0x88], 0
je 0x415608
mov ecx, dword [esp + 0x24]
push 0xffffffffffffffff
push ecx
push ebx
call fcn.0040e730
mov edi, eax
add esp, 0xc
test edi, edi
je 0x415608
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
jne 0x4155cd
movzx ecx, byte [edi - 2]
movzx edx, byte [edi - 1]
shl ecx, 8
or ecx, edx
movzx eax, byte [ecx + edi - 3]
lea ebp, [ecx + edi - 3]
mov byte [ebp], 0
mov edx, dword [esi + 8]
lea ecx, [esp + 0x2c]
push ecx
shr edx, 0xb
push 1
and edx, 1
push edx
push edi
mov dword [esp + 0x28], eax
call fcn.0040e3c0
mov cl, byte [esp + 0x28]
add esp, 0x10
mov byte [ebp], cl
test eax, eax
js 0x4155e8
mov edx, eax
sar edx, 8
mov byte [edi + 1], dl
mov byte [edi + 2], al
mov eax, dword [esp + 0x24]
push 0xffffffffffffffff
push eax
add edi, 3
push edi
call fcn.0040e730
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x415570
jmp 0x415608
cmp eax, 0xfffffffe
jne 0x4155f7
mov dword [esp + 0x10], 0x24
jmp 0x41560f
sub eax, 0xfffffffc
neg eax
sbb eax, eax
and eax, 0xffffffd3
add eax, 0x46
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], 0
je 0x41567a
push esi
call dword [0x59b580]
mov eax, dword [esp + 0x14]
add esp, 4
mov ebx, dword [esp + 0x109c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10ac]
sub ecx, ebx
mov dword [edx], ecx
mov esi, eax
mov ecx, str.no_error
test eax, eax
jle 0x415657
mov edi, edi
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x415640
cmp byte [ecx], dl
je 0x415652
dec esi
test esi, esi
jg 0x415640
jmp 0x415657
mov ecx, str.Error_text_not_found__please_report_
mov edx, dword [esp + 0x10a8]
mov dword [edx], ecx
mov ecx, dword [esp + 0x10a4]
test ecx, ecx
je 0x41566d
mov dword [ecx], eax
pop ebp
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x1088
ret
mov eax, dword [esi + 8]
mov dword [esp + 0x18], eax
test al, 0x10
jne 0x415707
mov edi, dword [esp + 0x70]
push edi
push 0
push ebx
call fcn.00414800
add esp, 0xc
test eax, eax
je 0x4156a9
mov eax, dword [esp + 0x18]
or eax, 0x10
mov dword [esi + 8], eax
jmp 0x415707
mov eax, dword [esp + 0x28]
test eax, eax
jns 0x4156c0
push 0
push ebx
call fcn.00414cb0
add esp, 8
test eax, eax
js 0x4156ee
mov ecx, eax
and ecx, 0xff
mov word [esi + 0x14], cx
test eax, 0x10000000
je 0x4156e7
mov edx, dword [esp + 0x30]
mov eax, ecx
movzx eax, byte [eax + edx]
cmp ax, cx
je 0x4156e7
or word [esi + 0xc], 0x20
or word [esi + 0xc], 0x10
jmp 0x415707
push edi
push 0
push ebx
call fcn.004149c0
add esp, 0xc
test eax, eax
je 0x415707
mov ecx, 0x100
or word [esi + 0xc], cx
mov ecx, dword [esp + 0x20]
test ecx, ecx
js 0x41574d
test byte [esi + 8], 0x10
je 0x41571d
test ecx, 0x20000000
je 0x41574d
mov eax, ecx
and eax, 0xff
mov word [esi + 0x16], ax
test ecx, 0x10000000
je 0x415748
mov ecx, dword [esp + 0x30]
mov edx, eax
movzx edx, byte [edx + ecx]
cmp dx, ax
je 0x415748
mov eax, pe_nt_image_headers32
or word [esi + 0xc], ax
or word [esi + 0xc], 0x40
pop ebp
pop edi
mov eax, esi
pop esi
pop ebx
add esp, 0x1088
ret