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

Disassembly:
mov eax, 0x11bc
call fcn.005dddf0
mov ecx, dword [esp + 0x11cc]
mov eax, dword [esp + 0x11d4]
push ebx
push ebp
push esi
or ebx, 0xffffffff
mov dword [esp + 0x3c], 1
push edi
mov edi, dword [esp + 0x11d0]
xor esi, esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], edi
test ecx, ecx
jne 0x4ee3fe
mov eax, dword [esp + 0x11d8]
test eax, eax
je 0x4ef0f7
pop edi
pop esi
pop ebp
mov dword [eax], 0x63
xor eax, eax
pop ebx
add esp, 0x11bc
ret
mov ebp, dword [esp + 0x11d8]
mov dword [ecx], esi
test ebp, ebp
je 0x4ee40e
mov dword [ebp], esi
mov ecx, dword [esp + 0x11e0]
test ecx, ecx
jne 0x4ee421
lea esi, [ecx + 0x10]
jmp 0x4ef0be
mov ebp, dword [esp + 0x11d4]
test eax, eax
mov dword [ecx], esi
mov ecx, 0x6348a0
cmovne ecx, eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x4c], ecx
lea eax, [ecx + 0x100]
mov dword [esp + 0x50], eax
lea eax, [ecx + 0x200]
mov dword [esp + 0x54], eax
lea eax, [ecx + 0x340]
mov dword [esp + 0x58], eax
test ebp, 0xd8008580
je 0x4ee46c
mov esi, 0x11
jmp 0x4ef0a3
mov eax, ebp
mov dword [esp + 0xb0], esi
and eax, 0x10000
cmp byte [edi], 0x28
mov dword [esp + 0x38], eax
jne 0x4ee7a5
nop word [eax + eax]
cmp byte [esi + edi + 1], 0x2a
lea eax, [esi + edi]
jne 0x4ee79d
push 5
lea edi, [eax + 2]
push str.UTF8_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee4c3
add esi, 7
or ebp, 0x800
jmp 0x4ee778
push 4
push str.UTF_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee4e5
add esi, 6
or ebp, 0x800
jmp 0x4ee778
push 4
push str.UCP_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee507
add esi, 6
or ebp, 0x20000000
jmp 0x4ee778
push 0x10
push str.NO_AUTO_POSSESS_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee529
add esi, 0x12
or ebp, 0x20000
jmp 0x4ee778
push 0xd
push str.NO_START_OPT_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee54b
add esi, 0xf
or ebp, 0x4000000
jmp 0x4ee778
push 0xc
push str.LIMIT_MATCH
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee5e3
mov ecx, dword [esp + 0x11d0]
lea edi, [esi + 0xe]
xor ebx, ebx
movzx eax, byte [edi + ecx]
push eax
call fcn.005f40f0
add esp, 4
test eax, eax
je 0x4ee5b5
mov ebp, dword [esp + 0x11d0]
cmp ebx, 0x19999998
ja 0x4ee5ae
movzx ecx, byte [edi + ebp]
lea eax, [ebx - 6]
lea eax, [ebx + eax*4]
inc edi
lea ebx, [ecx + eax*2]
movzx eax, byte [edi + ebp]
push eax
call fcn.005f40f0
add esp, 4
test eax, eax
jne 0x4ee587
mov ebp, dword [esp + 0x11d4]
mov eax, dword [esp + 0x11d0]
cmp byte [edi + eax], 0x29
jne 0x4ee79b
cmp ebx, dword [esp + 0x24]
jae 0x4ee5db
or dword [esp + 0xb0], 0x2000
mov dword [esp + 0x24], ebx
lea esi, [edi + 1]
jmp 0x4ee77f
push 0x10
push str.LIMIT_RECURSION
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee67c
mov eax, dword [esp + 0x11d0]
lea edi, [esi + 0x12]
xor ebx, ebx
movzx eax, byte [edi + eax]
push eax
call fcn.005f40f0
add esp, 4
test eax, eax
je 0x4ee64e
mov ebp, dword [esp + 0x11d0]
nop
cmp ebx, 0x19999998
ja 0x4ee647
movzx ecx, byte [edi + ebp]
lea eax, [ebx - 6]
lea eax, [ebx + eax*4]
inc edi
lea ebx, [ecx + eax*2]
movzx eax, byte [edi + ebp]
push eax
call fcn.005f40f0
add esp, 4
test eax, eax
jne 0x4ee620
mov ebp, dword [esp + 0x11d4]
mov eax, dword [esp + 0x11d0]
cmp byte [edi + eax], 0x29
jne 0x4ee79b
cmp ebx, dword [esp + 0x14]
jae 0x4ee674
or dword [esp + 0xb0], 0x4000
mov dword [esp + 0x14], ebx
lea esi, [edi + 1]
jmp 0x4ee77f
push 3
push 0x622024
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee6a3
add esi, 5
mov eax, 0x100000
and ebp, 0xff8fffff
jmp 0x4ee776
push 3
push 0x622028
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee6ca
add esi, 5
mov eax, 0x200000
and ebp, 0xff8fffff
jmp 0x4ee776
push 5
push str.CRLF_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee6f1
add esi, 7
mov eax, 0x300000
and ebp, 0xff8fffff
jmp 0x4ee776
push 4
push str.ANY_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee715
add esi, 6
mov eax, 0x400000
and ebp, 0xff8fffff
jmp 0x4ee776
push 8
push str.ANYCRLF_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee739
add esi, 0xa
mov eax, 0x500000
and ebp, 0xff8fffff
jmp 0x4ee776
push 0xc
push str.BSR_ANYCRLF_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee754
mov eax, 0x800000
jmp 0x4ee76d
push 0xc
push str.BSR_UNICODE_
push edi
call fcn.005de5d0
add esp, 0xc
test eax, eax
jne 0x4ee792
mov eax, 0x1000000
add esi, 0xe
and ebp, 0xfe7fffff
or ebp, eax
mov dword [esp + 0x11d4], ebp
mov edi, dword [esp + 0x11d0]
cmp byte [esi + edi], 0x28
je 0x4ee490
jmp 0x4ee79d
mov edi, dword [esp + 0x11d0]
jmp 0x4ee79d
mov edi, eax
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x38]
mov ecx, ebp
shr ecx, 0xb
and ecx, 1
mov dword [esp + 0x2c], ecx
je 0x4ee7ed
test eax, eax
je 0x4ee7c1
mov esi, 0x4e
jmp 0x4ef0b7
test ebp, 0x2000
jne 0x4ee7ed
push dword [esp + 0x11e0]
push 0xffffffffffffffff
push edi
call fcn.004ffdf0
add esp, 0xc
mov dword [esp + 0x10], eax
test eax, eax
je 0x4ee7ed
mov esi, 0x2c
jmp 0x4ef0b7
mov eax, ebp
and eax, 0x1800000
cmp eax, 0x1800000
je 0x4ef09e
mov eax, ebp
and eax, 0x700000
cmp eax, 0x300000
ja 0x4ee86c
je 0x4ee84a
test eax, eax
je 0x4ee825
cmp eax, 0x100000
je 0x4ee846
cmp eax, 0x200000
jne 0x4ef09e
mov al, 0xa
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 1
mov byte [esp + 0xd8], al
jmp 0x4ee896
mov al, 0xd
jmp 0x4ee827
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 2
mov word [esp + 0xd8], 0xa0d
jmp 0x4ee896
cmp eax, 0x400000
je 0x4ee88b
cmp eax, 0x500000
jne 0x4ef09e
mov dword [esp + 0xd0], 2
jmp 0x4ee896
mov dword [esp + 0xd0], 1
lea eax, [esp + 0x1cc]
mov dword [esp + 0x98], 0
mov ecx, edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x5c], eax
lea eax, [esp + 0xdc]
mov dword [esp + 0x9c], 0
mov dword [esp + 0x90], 0
lea edx, [ecx + 1]
mov dword [esp + 0x8c], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0x88], 0x1000
mov dword [esp + 0x74], eax
mov dword [esp + 0x84], 0x14
mov dword [esp + 0x64], edi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ee946
sub ecx, edx
mov dword [esp + 0xb4], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0x94], 0
lea eax, [ecx + edi]
mov dword [esp + 0xac], ebp
mov dword [esp + 0x68], eax
lea eax, [esi + edi]
mov dword [esp + 0x48], eax
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1cc]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x50]
mov dword [esp + 0x74], 0
push eax
push 0
lea eax, [esp + 0x3c]
mov byte [esp + 0x1d8], 0x83
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x50]
push eax
push 0
push 0
push 0
push 0
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x54]
push eax
push ebp
call fcn.004ec610
mov esi, dword [esp + 0x4c]
add esp, 0x3c
test esi, esi
jne 0x4ef0a3
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10000
jle 0x4eea11
mov esi, 0x14
jmp 0x4ef0a3
mov esi, dword [esp + 0x80]
add ecx, 0x38
imul esi, dword [esp + 0x7c]
add esi, ecx
push esi
call dword [0x68f5e4]
mov ecx, eax
add esp, 4
mov dword [esp + 0x18], ecx
test ecx, ecx
jne 0x4eea3e
lea esi, [eax + 0x15]
jmp 0x4ef0a3
mov dword [ecx + 4], esi
xor edx, edx
mov dword [ecx], 0x50435245
xorps xmm0, xmm0
mov eax, dword [esp + 0xac]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0xb0]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x14]
mov dword [ecx + 0x14], eax
xor eax, eax
mov dword [ecx + 0x18], eax
mov eax, 0x38
mov word [ecx + 0x22], ax
mov dword [ecx + 0x10], ebx
movzx eax, word [esp + 0x80]
mov word [ecx + 0x24], ax
movzx eax, word [esp + 0x7c]
mov word [ecx + 0x26], ax
xor eax, eax
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x28]
cmp eax, 0x6348a0
mov dword [ecx + 0x34], edx
cmove eax, edx
mov dword [ecx + 0x30], eax
xor eax, eax
mov dword [ecx + 0x2c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x90], eax
mov dword [esp + 0xa4], edx
mov dword [esp + 0xa8], edx
mov dword [esp + 0x8c], edx
mov dword [esp + 0x94], edx
movzx edi, word [ecx + 0x22]
add edi, ecx
mov dword [esp + 0x78], edi
movzx eax, word [ecx + 0x24]
movzx esi, word [ecx + 0x26]
mov ecx, dword [esp + 0x7c]
imul esi, eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x6c], eax
mov dword [esp + 0xcc], edx
movups xmmword [esp + 0xb4], xmm0
add esi, edi
mov dword [esp + 0x70], edx
mov dword [esp + 0x14], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x20], ecx
test ecx, ecx
jle 0x4eec69
xor eax, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x7c], eax
test ecx, ecx
jle 0x4eec52
mov eax, dword [esp + 0x74]
xor ecx, ecx
mov ebp, dword [esp + 0x20]
add eax, 4
mov dword [esp + 0x28], eax
mov edx, dword [eax + 4]
xor ebx, ebx
mov esi, dword [eax]
mov dword [esp + 0x44], edx
mov edx, dword [eax - 4]
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], edx
test ecx, ecx
jle 0x4eebe4
nop
lea eax, [edi + 2]
sub esi, 4
jb 0x4eeb79
mov ecx, dword [edx]
cmp ecx, dword [eax]
jne 0x4eeb7e
add edx, 4
add eax, 4
sub esi, 4
jae 0x4eeb68
cmp esi, 0xfffffffc
je 0x4eebb2
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x4eebab
cmp esi, 0xfffffffd
je 0x4eebb2
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x4eebab
cmp esi, 0xfffffffe
je 0x4eebb2
mov cl, byte [edx + 2]
cmp cl, byte [eax + 2]
jne 0x4eebab
cmp esi, 0xffffffff
je 0x4eebb2
mov cl, byte [edx + 3]
cmp cl, byte [eax + 3]
je 0x4eebb2
sbb eax, eax
or eax, 1
jmp 0x4eebb4
xor eax, eax
mov esi, dword [esp + 0x20]
test eax, eax
jne 0x4eec2e
cmp byte [edi + esi + 2], al
je 0x4eec30
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x80]
sub eax, ebx
imul eax, ecx
push eax
lea eax, [ecx + edi]
push edi
push eax
call fcn.004e3060
mov edx, dword [esp + 0x28]
add esp, 0xc
mov ecx, dword [esp + 0x44]
mov eax, ecx
shr eax, 8
push esi
mov byte [edi], al
lea eax, [edi + 2]
push edx
push eax
mov byte [edi + 1], cl
call fcn.004da640
mov eax, dword [esp + 0x34]
dec ebp
mov byte [edi + esi + 2], 0
add eax, 0xc
mov ecx, dword [esp + 0x88]
add esp, 0xc
inc ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x7c], ecx
test ebp, ebp
jle 0x4eec47
mov edi, dword [esp + 0x78]
jmp 0x4eeb40
js 0x4eebc2
add edi, dword [esp + 0x80]
inc ebx
mov edx, dword [esp + 0x1c]
cmp ebx, dword [esp + 0x3c]
jge 0x4eebe4
jmp 0x4eeb60
mov ebp, dword [esp + 0x11d4]
mov esi, dword [esp + 0x14]
cmp dword [esp + 0x84], 0x14
jle 0x4eec69
push dword [esp + 0x74]
call dword [0x68f5e8]
add esp, 4
mov eax, dword [esp + 0x48]
push 0
mov dword [esp + 0x20], eax
lea eax, [esp + 0x50]
push eax
push 0
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x44]
mov byte [esi], 0x83
push eax
lea eax, [esp + 0x38]
mov dword [esp + 0x34], esi
push eax
lea eax, [esp + 0x50]
push eax
push 0
push 0
push 0
push 0
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x54]
push eax
push dword [edi + 8]
call fcn.004ec610
movzx eax, word [esp + 0xc8]
add esp, 0x3c
mov word [edi + 0x1e], ax
movzx eax, word [esp + 0x98]
mov word [edi + 0x20], ax
movzx eax, word [esp + 0x94]
mov word [edi + 0x1c], ax
mov eax, dword [esp + 0xb0]
or eax, 1
mov dword [edi + 0xc], eax
cmp dword [esp + 0xb8], 0
je 0x4eed07
or eax, 0xffffffff
mov dword [esp + 0x28], 0
mov dword [esp + 0x30], eax
jmp 0x4eed17
mov eax, dword [esp + 0x30]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x4eed31
mov eax, dword [esp + 0x1c]
mov edx, 0x16
cmp byte [eax], cl
cmovne ecx, edx
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x20]
mov edx, 0x17
mov byte [eax], 0
inc eax
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x44], eax
sub eax, esi
cmp eax, dword [esp + 0x40]
mov eax, dword [esp + 0x6c]
cmovg ecx, edx
mov dword [esp + 0x10], ecx
cmp eax, ebx
jbe 0x4eee09
xor edx, edx
mov dword [esp + 0x34], 0xffffffff
test ecx, ecx
jne 0x4eee09
cmp eax, ebx
jbe 0x4eee01
sub eax, 2
mov dword [esp + 0x6c], eax
movzx edi, byte [eax + 1]
movzx eax, byte [eax]
shl eax, 8
or edi, eax
je 0x4eedf8
mov ecx, dword [esp + 0x14]
cmp byte [edi + ecx - 1], 0x75
jne 0x4eedf8
movzx esi, byte [edi + ecx]
movzx eax, byte [edi + ecx + 1]
shl esi, 8
or esi, eax
cmp esi, dword [esp + 0x34]
je 0x4eedc5
push esi
push dword [esp + 0x30]
push ecx
call fcn.004e5390
add esp, 0xc
mov dword [esp + 0x34], esi
mov edx, eax
test edx, edx
je 0x4eedf1
mov ebx, dword [esp + 0x14]
mov ecx, edx
sub ecx, ebx
mov al, dl
sar ecx, 8
sub al, bl
mov byte [edi + ebx], cl
mov byte [edi + ebx + 1], al
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x5c]
test ecx, ecx
jne 0x4eee01
mov eax, dword [esp + 0x6c]
jmp 0x4eed75
mov ecx, 0x35
jmp 0x4eedfd
mov ecx, 0xa
mov dword [esp + 0x10], ecx
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
cmp dword [esp + 0x88], 0x1000
jle 0x4eee24
push ebx
call dword [0x68f5e8]
mov ecx, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x5c], 0
test ecx, ecx
jne 0x4eee42
mov ax, word [edi + 0x20]
cmp ax, word [edi + 0x1e]
jbe 0x4eee59
mov dword [esp + 0x10], 0xf
mov ebp, dword [esp + 0x18]
push ebp
call dword [0x68f5e8]
mov esi, dword [esp + 0x14]
add esp, 4
jmp 0x4ef0a3
mov ebx, dword [esp + 0x2c]
test ebp, 0x20000
jne 0x4eee7b
lea eax, [esp + 0x4c]
push eax
push ebx
push esi
call fcn.004e5ef0
add esp, 0xc
cmp dword [esp + 0x10], 0
jne 0x4eee42
cmp dword [esp + 0xc0], 0
je 0x4eef39
push 0xffffffffffffffff
push ebx
push esi
call fcn.004e5390
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4eef35
mov ebp, dword [esp + 0x18]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
jne 0x4eef10
movzx esi, byte [edi - 2]
movzx eax, byte [edi - 1]
shl esi, 8
or esi, eax
lea eax, [esp + 0x4c]
push ecx
push eax
push 1
mov bl, byte [esi + edi - 3]
mov byte [esi + edi - 3], cl
mov eax, dword [ebp + 8]
shr eax, 0xb
and eax, 1
push eax
push edi
call fcn.004ed230
mov edx, eax
mov byte [esi + edi - 3], bl
add esp, 0x14
test edx, edx
js 0x4eef71
mov ecx, dword [esp + 0x94]
cmp edx, ecx
mov ebx, dword [esp + 0x2c]
cmovg ecx, edx
sar eax, 8
mov dword [esp + 0x94], ecx
mov byte [edi + 1], al
mov byte [edi + 2], dl
push 0xffffffffffffffff
lea eax, [edi + 3]
push ebx
push eax
call fcn.004e5390
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x4eeea3
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x4eee46
mov edi, dword [esp + 0x18]
mov eax, dword [edi + 8]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x48], eax
test al, 0x10
jne 0x4ef010
push 0
lea eax, [esp + 0x50]
push eax
push 0
push ebx
call fcn.004edfd0
add esp, 0x10
test eax, eax
je 0x4eefa7
mov eax, dword [esp + 0x48]
or eax, 0x10
mov dword [edi + 8], eax
jmp 0x4ef010
cmp edx, 0xfffffffe
jne 0x4eef91
push ebp
mov dword [esp + 0x14], 0x24
call dword [0x68f5e8]
mov esi, dword [esp + 0x14]
add esp, 4
jmp 0x4ef0a3
cmp edx, 0xfffffffc
mov eax, 0x19
mov ecx, 0x46
cmove eax, ecx
mov dword [esp + 0x10], eax
jmp 0x4eef2d
mov eax, dword [esp + 0x24]
test eax, eax
jns 0x4eefea
push 0
lea eax, [esp + 0x28]
push eax
push ebx
call fcn.004ed0a0
mov ecx, eax
add esp, 0xc
mov eax, dword [esp + 0x24]
test eax, eax
jns 0x4eefee
push 0
push 0
lea eax, [esp + 0x54]
push eax
push 0
push ebx
call fcn.004ee190
add esp, 0x14
test eax, eax
je 0x4ef010
or dword [edi + 0xc], 0x100
jmp 0x4ef010
mov ecx, dword [esp + 0x38]
movzx edx, cl
mov word [edi + 0x18], dx
test al, 1
je 0x4ef00c
mov eax, dword [esp + 0x50]
mov ecx, edx
movzx eax, byte [ecx + eax]
cmp ax, dx
je 0x4ef00c
or dword [edi + 0xc], 0x20
or dword [edi + 0xc], 0x10
mov eax, dword [esp + 0x30]
test eax, eax
js 0x4ef04b
test byte [edi + 8], 0x10
je 0x4ef022
test al, 2
je 0x4ef04b
mov ecx, dword [esp + 0x28]
movzx edx, cl
mov word [edi + 0x1a], dx
test al, 1
je 0x4ef047
mov eax, dword [esp + 0x50]
mov ecx, edx
movzx eax, byte [ecx + eax]
cmp ax, dx
je 0x4ef047
or dword [edi + 0xc], 0x80
or dword [edi + 0xc], 0x40
mov esi, dword [esp + 0x44]
nop
push 0
lea eax, [esp + 0x50]
push eax
push dword [esp + 0x34]
push esi
push ebx
call fcn.004ecb60
add esp, 0x14
test eax, eax
jne 0x4ef08a
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x4ef050
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x11bc
ret
or dword [edi + 0xc], 0x8000
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x11bc
ret
mov esi, 0x38
mov ecx, dword [esp + 0x11e0]
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x11d0]
mov dword [ecx], eax
mov ebp, dword [esp + 0x11d8]
mov edx, esi
mov ecx, str.no_error
test edx, edx
jle 0x4ef0e7
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ef0d0
cmp byte [ecx], al
je 0x4ef0e2
dec edx
test edx, edx
jg 0x4ef0d0
jmp 0x4ef0e7
mov ecx, str.Error_text_not_found__please_report_
mov eax, dword [esp + 0x11dc]
mov dword [eax], ecx
test ebp, ebp
je 0x4ef0f7
mov dword [ebp], esi
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x11bc
ret