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

Disassembly:
mov eax, 0x10a4
call fcn.004db810
mov eax, dword [esp + 0x10ac]
push ebx
push ebp
push esi
push edi
mov ebp, ecx
mov dword [esp + 0x18], 1
xor edi, edi
mov dword [esp + 0xac], ebp
mov dword [esp + 0x28], 0
mov ebx, edx
mov dword [esp + 0x14], ebp
test eax, eax
jne 0x4baa9c
mov eax, dword [esp + 0x10b8]
test eax, eax
je 0x4bb2dd
mov dword [eax], 0x63
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10a4
ret
mov dword [eax], edi
mov eax, dword [esp + 0x10b8]
test eax, eax
je 0x4baaab
mov dword [eax], edi
mov eax, dword [esp + 0x10c0]
test eax, eax
jne 0x4baac2
mov ebp, 0x10
mov edx, ebp
jmp 0x4bb2a6
mov dword [eax], edi
mov dword [esp + 0x38], 0x4e74a8
mov dword [esp + 0x3c], 0x4e75a8
mov dword [esp + 0x40], 0x4e76a8
mov dword [esp + 0x44], 0x4e77e8
test ebx, 0xd8038580
je 0x4baaf6
mov ebp, 0x11
jmp 0x4bb287
cmp byte [ebp], 0x28
jne 0x4bac9f
lea esi, [ebp + 2]
cmp byte [edi + ebp + 1], 0x2a
jne 0x4bac9f
push 5
push str.UTF8_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bab33
add edi, 7
add esi, 7
or ebx, 0x800
jmp 0x4bac95
push 4
push str.UCP_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bab58
add edi, 6
add esi, 6
or ebx, 0x20000000
jmp 0x4bac95
push 0xd
push str.NO_START_OPT_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bab7d
add edi, 0xf
add esi, 0xf
or ebx, 0x4000000
jmp 0x4bac95
push 3
push 0x4f1368
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4baba9
mov eax, 0x100000
and ebx, 0xff8fffff
add edi, 5
add esi, 5
or ebx, eax
jmp 0x4bac95
push 3
push 0x4f136c
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4babd5
mov eax, 0x200000
and ebx, 0xff8fffff
add edi, 5
add esi, 5
or ebx, eax
jmp 0x4bac95
push 5
push str.CRLF_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bac01
mov eax, 0x300000
and ebx, 0xff8fffff
add edi, 7
add esi, 7
or ebx, eax
jmp 0x4bac95
push 4
push str.ANY_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bac2a
mov eax, 0x400000
and ebx, 0xff8fffff
add edi, 6
add esi, 6
or ebx, eax
jmp 0x4bac95
push 8
push str.ANYCRLF_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bac53
mov eax, 0x500000
and ebx, 0xff8fffff
add edi, 0xa
add esi, 0xa
or ebx, eax
jmp 0x4bac95
push 0xc
push str.BSR_ANYCRLF_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bac6e
mov eax, 0x800000
jmp 0x4bac87
push 0xc
push str.BSR_UNICODE_
push esi
call fcn.004ca980
add esp, 0xc
test eax, eax
jne 0x4bac9f
mov eax, 0x1000000
and ebx, 0xfe7fffff
add esi, 0xe
or ebx, eax
add edi, 0xe
cmp byte [edi + ebp], 0x28
je 0x4bab03
test ebx, 0x20000000
je 0x4bacb1
mov ebp, 0x43
jmp 0x4bb287
mov eax, ebx
and eax, 0x1800000
cmp eax, 0x1800000
je 0x4bb282
mov eax, ebx
and eax, 0x700000
cmp eax, 0x300000
ja 0x4bad30
je 0x4bad0e
test eax, eax
je 0x4bad0e
cmp eax, 0x100000
je 0x4baced
cmp eax, 0x200000
jne 0x4bb282
mov al, 0xa
jmp 0x4bacef
mov al, 0xd
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 1
mov byte [esp + 0xa0], al
jmp 0x4bad5a
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 2
mov word [esp + 0xa0], 0xa0d
jmp 0x4bad5a
cmp eax, 0x400000
je 0x4bad4f
cmp eax, 0x500000
jne 0x4bb282
mov dword [esp + 0x98], 2
jmp 0x4bad5a
mov dword [esp + 0x98], 1
mov ecx, ebp
mov dword [esp + 0x78], 0
lea eax, [esp + 0xb0]
mov dword [esp + 0x7c], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x64], 0
lea edx, [ecx + 1]
mov dword [esp + 0x68], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x4c], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x6c], 0x1000
mov dword [esp + 0x50], ebp
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4badb6
sub ecx, edx
mov dword [esp + 0x8c], 0
lea edx, [esp + 0x2c]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], 0
lea eax, [ecx + ebp]
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], eax
mov ecx, ebx
lea eax, [edi + ebp]
mov byte [esp + 0xb0], 0x7d
mov dword [esp + 0x24], eax
mov dword [esp + 0x14], eax
lea eax, [esp + 0xb0]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x3c]
push eax
push 0
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x44]
push eax
push 0
push 0
push 0
push 0
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.004ba290
mov ebp, dword [esp + 0x54]
add esp, 0x2c
test ebp, ebp
jne 0x4bb287
mov ecx, dword [esp + 0x18]
cmp ecx, 0x10000
jle 0x4bae6c
mov ebp, 0x14
jmp 0x4bb287
mov eax, dword [esp + 0x68]
lea esi, [ecx + 0x28]
imul eax, dword [esp + 0x64]
add esi, eax
push esi
call fcn.004c4e35
mov edi, eax
add esp, 4
mov dword [esp + 0x1c], edi
test edi, edi
jne 0x4bae95
lea ebp, [eax + 0x15]
jmp 0x4bb287
mov eax, dword [esp + 0x84]
lea ecx, [edi + 0x28]
mov dword [edi + 8], eax
lea edx, [esp + 0x2c]
movzx eax, word [esp + 0x88]
mov word [edi + 0xc], ax
xor eax, eax
mov word [edi + 0xe], ax
mov dword [edi + 0x14], eax
mov eax, 0x28
mov word [edi + 0x18], ax
mov ax, word [esp + 0x64]
movzx ebx, ax
mov word [edi + 0x1c], ax
xor eax, eax
mov word [edi + 0x1e], ax
mov dword [edi + 0x20], eax
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x74], eax
mov dword [edi + 4], esi
mov si, word [esp + 0x68]
push 0
movzx eax, si
imul ebx, eax
mov eax, dword [esp + 0x4c]
add ebx, ecx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x3c]
push eax
push 0
lea eax, [esp + 0x2c]
mov dword [esp + 0x6c], ecx
push eax
lea eax, [esp + 0x44]
mov dword [edi], 0x50435245
push eax
push 0
push 0
push 0
push 0
lea eax, [esp + 0x4c]
mov word [edi + 0x1a], si
push eax
mov dword [esp + 0xa8], 0
lea eax, [esp + 0x3c]
mov dword [esp + 0x98], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x74], ebx
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0x80], 0
mov byte [ebx], 0x7d
mov ecx, dword [edi + 8]
push eax
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x58], ebx
call fcn.004ba290
movzx eax, word [esp + 0x9c]
or ecx, 0xffffffff
mov ebp, dword [esp + 0x54]
add esp, 0x2c
mov word [edi + 0x10], ax
movzx eax, word [esp + 0x78]
mov word [edi + 0x12], ax
mov eax, dword [esp + 0x88]
or eax, 1
cmp dword [esp + 0x90], 0
mov word [edi + 0xc], ax
mov eax, dword [esp + 0x20]
cmovne eax, ecx
mov dword [esp + 0xa8], eax
test ebp, ebp
jne 0x4baff1
mov eax, dword [esp + 0x14]
mov ecx, 0x16
cmp byte [eax], 0
cmovne ebp, ecx
mov eax, dword [esp + 0x2c]
mov ecx, 0x17
mov byte [eax], 0
sub eax, ebx
inc eax
cmp eax, dword [esp + 0x18]
mov eax, dword [esp + 0x5c]
cmovg ebp, ecx
mov ecx, dword [esp + 0x48]
cmp eax, ecx
jbe 0x4bb0a2
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x18], 0
test ebp, ebp
jne 0x4bb0a2
nop dword [eax + eax]
cmp eax, ecx
jbe 0x4bb0a2
sub eax, 2
mov dword [esp + 0x5c], eax
movzx edx, byte [eax]
movzx eax, byte [eax + 1]
shl edx, 8
or edx, eax
movzx eax, byte [edx + ebx + 1]
add edx, ebx
mov dword [esp + 0x24], edx
movzx esi, byte [edx]
shl esi, 8
or esi, eax
cmp esi, dword [esp + 0x20]
je 0x4bb079
push esi
mov ecx, ebx
call fcn.004b5ca0
mov edx, dword [esp + 0x28]
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], esi
jmp 0x4bb07d
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4bb099
mov ecx, eax
sub ecx, ebx
sar ecx, 8
sub al, bl
mov byte [edx], cl
mov byte [edx + 1], al
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x48]
jmp 0x4bb030
mov ecx, dword [esp + 0x48]
mov ebp, 0x35
cmp dword [esp + 0x6c], 0x1000
jle 0x4bb0b5
push ecx
call fcn.004c4247
add esp, 4
test ebp, ebp
jne 0x4bb0c9
mov ax, word [edi + 0x12]
mov ecx, 0xf
cmp ax, word [edi + 0x10]
cmova ebp, ecx
cmp dword [esp + 0x94], 0
je 0x4bb18b
push 0xffffffffffffffff
mov ecx, ebx
call fcn.004b5ca0
mov edi, eax
add esp, 4
test edi, edi
je 0x4bb187
nop dword [eax]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
jne 0x4bb145
movzx esi, byte [edi - 2]
movzx eax, byte [edi - 1]
shl esi, 8
or esi, eax
lea eax, [esp + 0x38]
push eax
mov eax, dword [esp + 0x20]
push 1
mov bl, byte [esi + edi - 3]
mov byte [esi + edi - 3], cl
mov ecx, edi
mov edx, dword [eax + 8]
shr edx, 0xb
and edx, 1
call fcn.004b5980
add esp, 8
mov byte [esi + edi - 3], bl
test eax, eax
js 0x4bb15a
mov ecx, eax
mov byte [edi + 2], al
sar ecx, 8
mov byte [edi + 1], cl
push 0xffffffffffffffff
lea ecx, [edi + 3]
call fcn.004b5ca0
mov edi, eax
add esp, 4
test edi, edi
jne 0x4bb0f0
jmp 0x4bb183
cmp eax, 0xfffffffe
jne 0x4bb173
push dword [esp + 0x1c]
lea ebp, [eax + 0x26]
call fcn.004c4247
add esp, 4
jmp 0x4bb287
cmp eax, 0xfffffffc
mov ebp, 0x19
mov ecx, 0x46
cmove ebp, ecx
mov ebx, dword [esp + 0x30]
mov edi, dword [esp + 0x1c]
test ebp, ebp
je 0x4bb1a0
push dword [esp + 0x1c]
call fcn.004c4247
add esp, 4
jmp 0x4bb287
mov ecx, dword [edi + 8]
mov eax, ecx
mov ebp, dword [esp + 0x3c]
test cl, 0x10
jne 0x4bb238
push dword [esp + 0x7c]
xor edx, edx
mov ecx, ebx
call fcn.004ba670
add esp, 4
test eax, eax
je 0x4bb1d1
mov eax, dword [edi + 8]
or eax, 0x10
mov dword [edi + 8], eax
jmp 0x4bb238
mov eax, dword [esp + 0x34]
test eax, eax
jns 0x4bb20e
xor edx, edx
mov ecx, ebx
call fcn.004ba8f0
test eax, eax
jns 0x4bb20e
push dword [esp + 0x7c]
mov esi, dword [edi + 8]
xor edx, edx
mov ecx, ebx
mov dword [esp + 0x28], esi
call fcn.004ba770
add esp, 4
test eax, eax
je 0x4bb234
mov eax, 0x100
or word [edi + 0xc], ax
mov eax, esi
jmp 0x4bb238
movzx ecx, al
mov word [edi + 0x14], cx
test eax, 0x10000000
je 0x4bb22a
movzx eax, byte [ecx + ebp]
cmp ax, cx
je 0x4bb22a
or word [edi + 0xc], 0x20
or word [edi + 0xc], 0x10
mov eax, dword [edi + 8]
jmp 0x4bb238
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0xa8]
test edx, edx
js 0x4bb275
test al, 0x10
je 0x4bb24f
test edx, 0x20000000
je 0x4bb275
movzx ecx, dl
mov word [edi + 0x16], cx
test edx, 0x10000000
je 0x4bb270
movzx eax, byte [ecx + ebp]
cmp ax, cx
je 0x4bb270
mov eax, 0x80
or word [edi + 0xc], ax
or word [edi + 0xc], 0x40
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10a4
ret
mov ebp, 0x38
mov ecx, dword [esp + 0x10c0]
mov eax, dword [esp + 0x14]
sub eax, dword [esp + 0xac]
mov dword [ecx], eax
mov edx, ebp
mov ecx, str.no_error
test edx, edx
jle 0x4bb2c7
mov ecx, str.no_error
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4bb2b0
cmp byte [ecx], al
je 0x4bb2c2
dec edx
test edx, edx
jg 0x4bb2b0
jmp 0x4bb2c7
mov ecx, str.Error_text_not_found__please_report_
mov eax, dword [esp + 0x10bc]
mov dword [eax], ecx
mov eax, dword [esp + 0x10b8]
test eax, eax
je 0x4bb2dd
mov dword [eax], ebp
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x10a4
ret