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

Disassembly:
mov eax, 0x11d0
call fcn.101309d0
mov eax, dword [0x101a7680]
xor eax, esp
mov dword [esp + 0x11cc], eax
mov ecx, dword [esp + 0x11e0]
mov edx, dword [esp + 0x11e4]
mov eax, dword [esp + 0x11e8]
push ebx
mov ebx, dword [esp + 0x11e0]
push ebp
mov ebp, dword [esp + 0x11dc]
push esi
push edi
xor edi, edi
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x48], ebx
lea esi, [esp + 0xec]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x50], edx
mov dword [esp + 0x44], 1
mov dword [esp + 0x18], 0xffffffff
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x84], esi
mov dword [esp + 0x94], 0x14
mov dword [esp + 0x1c], ebp
test ecx, ecx
jne 0x1011c9f9
test ebx, ebx
je 0x1011d703
mov dword [ebx], 0x63
jmp 0x1011d703
mov dword [ecx], edi
test ebx, ebx
je 0x1011ca01
mov dword [ebx], edi
test edx, edx
jne 0x1011ca0f
mov edx, 0x10
jmp 0x1011d6d3
mov ebx, dword [esp + 0x11e8]
test eax, eax
mov ecx, 0x1016c530
mov dword [edx], edi
cmovne ecx, eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x5c], ecx
lea eax, [ecx + 0x100]
mov dword [esp + 0x60], eax
lea eax, [ecx + 0x200]
mov dword [esp + 0x64], eax
lea eax, [ecx + 0x340]
mov dword [esp + 0x68], eax
test ebx, 0xd8008580
je 0x1011ca5a
mov edx, 0x11
jmp 0x1011d6a1
mov eax, ebx
mov dword [esp + 0xc0], edi
and eax, 0x10000
cmp byte [ebp], 0x28
mov dword [esp + 0x40], eax
jne 0x1011cd5a
nop word [eax + eax]
cmp byte [edi + ebp + 1], 0x2a
jne 0x1011cd47
push 5
lea esi, [ebp + 2]
add esi, edi
push str.UTF8_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cab2
add edi, 7
or ebx, 0x800
jmp 0x1011cd36
push 4
push str.UTF_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cad4
add edi, 6
or ebx, 0x800
jmp 0x1011cd36
push 4
push str.UCP_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011caf6
add edi, 6
or ebx, 0x20000000
jmp 0x1011cd36
push 0x10
push str.NO_AUTO_POSSESS_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cb18
add edi, 0x12
or ebx, 0x20000
jmp 0x1011cd36
push 0xd
push str.NO_START_OPT_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cb3a
add edi, 0xf
or ebx, 0x4000000
jmp 0x1011cd36
push 0xc
push str.LIMIT_MATCH
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cbba
movzx eax, byte [edi + ebp + 0xe]
lea esi, [edi + 0xe]
push eax
xor ebx, ebx
call fcn.10140570
add esp, 4
test eax, eax
je 0x1011cb8c
cmp ebx, 0x19999998
ja 0x1011cb8c
movzx ecx, byte [esi + ebp]
lea eax, [ebx - 6]
lea eax, [ebx + eax*4]
inc esi
lea ebx, [ecx + eax*2]
movzx eax, byte [esi + ebp]
push eax
call fcn.10140570
add esp, 4
test eax, eax
jne 0x1011cb65
cmp byte [esi + ebp], 0x29
jne 0x1011cd47
cmp ebx, dword [esp + 0x18]
jae 0x1011cbab
or dword [esp + 0xc0], 0x2000
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x11e8]
lea edi, [esi + 1]
jmp 0x1011cd3d
push 0x10
push str.LIMIT_RECURSION
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cc3a
movzx eax, byte [edi + ebp + 0x12]
lea esi, [edi + 0x12]
push eax
xor ebx, ebx
call fcn.10140570
add esp, 4
test eax, eax
je 0x1011cc0c
cmp ebx, 0x19999998
ja 0x1011cc0c
movzx ecx, byte [esi + ebp]
lea eax, [ebx - 6]
lea eax, [ebx + eax*4]
inc esi
lea ebx, [ecx + eax*2]
movzx eax, byte [esi + ebp]
push eax
call fcn.10140570
add esp, 4
test eax, eax
jne 0x1011cbe5
cmp byte [esi + ebp], 0x29
jne 0x1011cd47
cmp ebx, dword [esp + 0x24]
jae 0x1011cc2b
or dword [esp + 0xc0], 0x4000
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x11e8]
lea edi, [esi + 1]
jmp 0x1011cd3d
push 3
push 0x1016b944
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cc61
add edi, 5
mov eax, 0x100000
and ebx, 0xff8fffff
jmp 0x1011cd34
push 3
push 0x1016b948
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cc88
add edi, 5
mov eax, 0x200000
and ebx, 0xff8fffff
jmp 0x1011cd34
push 5
push str.CRLF_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011ccaf
add edi, 7
mov eax, 0x300000
and ebx, 0xff8fffff
jmp 0x1011cd34
push 4
push str.ANY_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011ccd3
add edi, 6
mov eax, 0x400000
and ebx, 0xff8fffff
jmp 0x1011cd34
push 8
push str.ANYCRLF_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011ccf7
add edi, 0xa
mov eax, 0x500000
and ebx, 0xff8fffff
jmp 0x1011cd34
push 0xc
push str.BSR_ANYCRLF_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cd12
mov eax, 0x800000
jmp 0x1011cd2b
push 0xc
push str.BSR_UNICODE_
push esi
call fcn.10140110
add esp, 0xc
test eax, eax
jne 0x1011cd47
mov eax, 0x1000000
add edi, 0xe
and ebx, 0xfe7fffff
or ebx, eax
mov dword [esp + 0x11e8], ebx
cmp byte [edi + ebp], 0x28
je 0x1011ca80
mov ebx, dword [esp + 0x11e8]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x50]
mov dword [esp + 0x14], edi
mov ecx, ebx
shr ecx, 0xb
and ecx, 1
mov dword [esp + 0x30], ecx
je 0x1011cd9c
test eax, eax
je 0x1011cd76
mov edx, 0x4e
jmp 0x1011d6cf
test ebx, 0x2000
jne 0x1011cd9c
push edx
push 0xffffffffffffffff
push ebp
call fcn.1012cc30
add esp, 0xc
mov dword [esp + 0x10], eax
test eax, eax
je 0x1011cd9c
mov edx, 0x2c
jmp 0x1011d6cf
mov eax, ebx
and eax, 0x1800000
cmp eax, 0x1800000
je 0x1011d69c
mov eax, ebx
and eax, 0x700000
cmp eax, 0x300000
ja 0x1011ce1b
je 0x1011cdf9
test eax, eax
je 0x1011cdd4
cmp eax, 0x100000
je 0x1011cdf5
cmp eax, 0x200000
jne 0x1011d69c
mov al, 0xa
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 1
mov byte [esp + 0xe8], al
jmp 0x1011ce45
mov al, 0xd
jmp 0x1011cdd6
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 2
mov word [esp + 0xe8], 0xa0d
jmp 0x1011ce45
cmp eax, 0x400000
je 0x1011ce3a
cmp eax, 0x500000
jne 0x1011d69c
mov dword [esp + 0xe0], 2
jmp 0x1011ce45
mov dword [esp + 0xe0], 1
mov ecx, ebp
mov dword [esp + 0xa8], 0
lea eax, [esp + 0x1dc]
mov dword [esp + 0xac], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x8c], 0
lea edx, [ecx + 1]
mov dword [esp + 0x90], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0x70], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0xdc], 0
mov dword [esp + 0x6c], eax
mov dword [esp + 0x98], 0x1000
mov dword [esp + 0x74], ebp
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1011cee5
sub ecx, edx
mov dword [esp + 0xc4], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0xa4], 0
lea eax, [ecx + ebp]
mov dword [esp + 0xbc], ebx
mov dword [esp + 0x78], eax
lea eax, [edi + ebp]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1dc]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x60]
mov dword [esp + 0x84], 0
push eax
push 0
lea eax, [esp + 0x40]
mov byte [esp + 0x1e8], 0x83
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x58]
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 ebx
call fcn.1011ae90
mov edx, dword [esp + 0x4c]
add esp, 0x3c
test edx, edx
jne 0x1011d6a5
mov ecx, dword [esp + 0x44]
cmp ecx, 0x10000
jle 0x1011cfaf
mov edx, 0x14
jmp 0x1011d6a1
mov esi, dword [esp + 0x90]
add ecx, 0x38
imul esi, dword [esp + 0x8c]
add esi, ecx
push esi
call dword [0x101a7400]
mov edx, eax
add esp, 4
mov dword [esp + 0x2c], edx
test edx, edx
jne 0x1011cfdf
lea edx, [eax + 0x15]
jmp 0x1011d6a1
mov dword [edx], 0x50435245
xor ecx, ecx
mov dword [edx + 4], esi
xorps xmm0, xmm0
mov eax, dword [esp + 0xbc]
mov dword [edx + 8], eax
mov eax, dword [esp + 0xc0]
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x18]
mov dword [edx + 0x10], eax
mov eax, dword [esp + 0x24]
mov dword [edx + 0x14], eax
xor eax, eax
mov dword [edx + 0x18], eax
mov eax, 0x38
mov word [edx + 0x22], ax
movzx eax, word [esp + 0x90]
mov word [edx + 0x24], ax
movzx eax, word [esp + 0x8c]
mov word [edx + 0x26], ax
xor eax, eax
mov dword [edx + 0x28], eax
mov eax, dword [esp + 0x28]
cmp eax, 0x1016c530
mov dword [edx + 0x34], ecx
cmove eax, ecx
mov dword [edx + 0x30], eax
xor eax, eax
mov dword [edx + 0x2c], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xb4], ecx
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa4], ecx
movzx ebp, word [edx + 0x22]
add ebp, edx
mov dword [esp + 0x88], ebp
movzx eax, word [edx + 0x24]
movzx ecx, word [edx + 0x26]
imul ecx, eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0xdc], 0
add ecx, ebp
mov dword [esp + 0x80], 0
mov dword [esp + 0x18], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x28], eax
movups xmmword [esp + 0xc4], xmm0
test eax, eax
jle 0x1011d26d
xor ebx, ebx
mov dword [esp + 0x8c], ebx
test eax, eax
jle 0x1011d239
mov edi, dword [esp + 0x84]
xor ecx, ecx
add edi, 4
mov eax, dword [edi + 4]
mov esi, dword [edi]
mov dword [esp + 0x54], eax
mov eax, dword [edi - 4]
mov dword [esp + 0x1c], eax
xor eax, eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
test ecx, ecx
jle 0x1011d1e3
mov edx, dword [esp + 0x1c]
lea eax, [ebp + 2]
sub esi, 4
jb 0x1011d132
mov ecx, dword [edx]
cmp ecx, dword [eax]
jne 0x1011d137
add edx, 4
add eax, 4
sub esi, 4
jae 0x1011d121
cmp esi, 0xfffffffc
je 0x1011d16b
mov cl, byte [edx]
cmp cl, byte [eax]
jne 0x1011d164
cmp esi, 0xfffffffd
je 0x1011d16b
mov cl, byte [edx + 1]
cmp cl, byte [eax + 1]
jne 0x1011d164
cmp esi, 0xfffffffe
je 0x1011d16b
mov cl, byte [edx + 2]
cmp cl, byte [eax + 2]
jne 0x1011d164
cmp esi, 0xffffffff
je 0x1011d16b
mov cl, byte [edx + 3]
cmp cl, byte [eax + 3]
je 0x1011d16b
sbb eax, eax
or eax, 1
jmp 0x1011d16d
xor eax, eax
mov esi, dword [esp + 0x24]
test eax, eax
jne 0x1011d1b3
cmp byte [esi + ebp + 2], al
je 0x1011d1b5
mov eax, dword [esp + 0x90]
mov edx, ebp
sub ebx, dword [esp + 0x20]
imul ebx, eax
lea ecx, [eax + ebp]
cmp ecx, ebp
jbe 0x1011d1cf
add ecx, ebx
lea edx, [ebx + ebp]
test ebx, ebx
je 0x1011d1e3
nop dword [eax + eax]
mov al, byte [edx - 1]
lea edx, [edx - 1]
mov byte [ecx - 1], al
lea ecx, [ecx - 1]
sub ebx, 1
jne 0x1011d1a0
jmp 0x1011d1e3
js 0x1011d17b
mov ecx, dword [esp + 0x20]
add ebp, dword [esp + 0x90]
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, ebx
jl 0x1011d115
jmp 0x1011d1e3
test ebx, ebx
je 0x1011d1e3
mov al, byte [edx]
lea ecx, [ecx + 1]
mov byte [ecx - 1], al
lea edx, [edx + 1]
sub ebx, 1
jne 0x1011d1d3
mov ecx, dword [esp + 0x54]
mov eax, ecx
shr eax, 8
push esi
push dword [esp + 0x20]
mov byte [ebp], al
lea eax, [ebp + 2]
push eax
mov byte [ebp + 1], cl
call fcn.10131920
mov eax, dword [esp + 0x34]
add esp, 0xc
mov byte [esi + ebp + 2], 0
dec eax
mov ebx, dword [esp + 0x8c]
add edi, 0xc
inc ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x8c], ebx
mov ecx, ebx
test eax, eax
jle 0x1011d235
mov ebp, dword [esp + 0x88]
jmp 0x1011d0f3
mov edi, dword [esp + 0x14]
cmp dword [esp + 0x94], 0x14
jle 0x1011d253
push dword [esp + 0x84]
call dword [0x101a7404]
add esp, 4
mov ebx, dword [esp + 0x11e8]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x94], 0
mov ebp, dword [esp + 0x4c]
push 0
mov byte [ecx], 0x83
mov dword [esp + 0x24], ecx
lea eax, [edi + ebp]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x60]
push eax
push 0
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x58]
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 [edx + 8]
call fcn.1011ae90
mov ecx, dword [esp + 0x68]
add esp, 0x3c
movzx eax, word [esp + 0x9c]
mov word [ecx + 0x1e], ax
movzx eax, word [esp + 0xa8]
mov word [ecx + 0x20], ax
movzx eax, word [esp + 0xa4]
mov word [ecx + 0x1c], ax
mov eax, dword [esp + 0xc0]
or eax, 1
mov dword [ecx + 0xc], eax
cmp dword [esp + 0xc8], 0
je 0x1011d30e
or eax, 0xffffffff
mov dword [esp + 0x28], 0
mov dword [esp + 0x34], eax
jmp 0x1011d31e
mov eax, dword [esp + 0x34]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x28], eax
cmp dword [esp + 0x10], 0
jne 0x1011d336
mov eax, dword [esp + 0x1c]
cmp byte [eax], 0
je 0x1011d336
mov dword [esp + 0x10], 0x16
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
mov byte [eax], 0
inc eax
mov dword [esp + 0x4c], eax
sub eax, edi
cmp eax, dword [esp + 0x44]
jle 0x1011d359
mov ecx, 0x17
mov dword [esp + 0x10], ecx
jmp 0x1011d35d
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x7c]
mov esi, dword [esp + 0x6c]
cmp eax, esi
jbe 0x1011d418
xor edx, edx
mov dword [esp + 0x38], 0xffffffff
test ecx, ecx
jne 0x1011d418
nop
cmp eax, esi
jbe 0x1011d414
sub eax, 2
mov dword [esp + 0x7c], eax
movzx edi, byte [eax]
movzx eax, byte [eax + 1]
shl edi, 8
or edi, eax
je 0x1011d40b
mov ecx, dword [esp + 0x18]
cmp byte [edi + ecx - 1], 0x75
jne 0x1011d40b
movzx esi, byte [edi + ecx]
movzx eax, byte [edi + ecx + 1]
shl esi, 8
or esi, eax
cmp esi, dword [esp + 0x38]
je 0x1011d3d0
push esi
push dword [esp + 0x34]
push ecx
call fcn.10114130
add esp, 0xc
mov dword [esp + 0x38], esi
mov edx, eax
test edx, edx
je 0x1011d400
mov eax, dword [esp + 0x18]
mov ecx, edx
sub ecx, eax
sar ecx, 8
mov byte [edi + eax], cl
mov al, dl
mov ecx, dword [esp + 0x18]
sub al, cl
mov byte [edi + ecx + 1], al
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x6c]
test ecx, ecx
jne 0x1011d414
mov eax, dword [esp + 0x7c]
jmp 0x1011d380
mov esi, dword [esp + 0x6c]
mov ecx, 0x35
jmp 0x1011d410
mov ecx, 0xa
mov dword [esp + 0x10], ecx
mov edi, dword [esp + 0x18]
cmp dword [esp + 0x98], 0x1000
jle 0x1011d433
push esi
call dword [0x101a7404]
mov ecx, dword [esp + 0x14]
add esp, 4
mov dword [esp + 0x6c], 0
test ecx, ecx
jne 0x1011d455
mov ecx, dword [esp + 0x2c]
mov ax, word [ecx + 0x20]
cmp ax, word [ecx + 0x1e]
jbe 0x1011d46b
mov dword [esp + 0x10], 0xf
push dword [esp + 0x2c]
call dword [0x101a7404]
mov edx, dword [esp + 0x14]
add esp, 4
jmp 0x1011d6a5
test ebx, 0x20000
mov ebx, dword [esp + 0x30]
jne 0x1011d48d
lea eax, [esp + 0x5c]
push eax
push ebx
push edi
call fcn.10114b20
add esp, 0xc
cmp dword [esp + 0x10], 0
jne 0x1011d455
cmp dword [esp + 0xd0], 0
je 0x1011d542
push 0xffffffffffffffff
push ebx
push edi
call fcn.10114130
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1011d542
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
jne 0x1011d51d
movzx esi, byte [edi - 2]
movzx eax, byte [edi - 1]
push ecx
shl esi, 8
or esi, eax
lea eax, [esp + 0x60]
push eax
mov eax, dword [esp + 0x34]
push 1
mov bl, byte [esi + edi - 3]
mov byte [esi + edi - 3], cl
mov eax, dword [eax + 8]
shr eax, 0xb
and eax, 1
push eax
push edi
call fcn.1011b9f0
mov ecx, eax
mov byte [esi + edi - 3], bl
add esp, 0x14
test ecx, ecx
js 0x1011d577
cmp ecx, dword [esp + 0xa4]
jle 0x1011d50e
mov dword [esp + 0xa4], ecx
mov ebx, dword [esp + 0x30]
mov eax, ecx
sar eax, 8
mov byte [edi + 1], al
mov byte [edi + 2], cl
push 0xffffffffffffffff
lea eax, [edi + 3]
push ebx
push eax
call fcn.10114130
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1011d4b1
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x1011d455
mov edi, dword [esp + 0x2c]
mov ebx, dword [edi + 8]
test bl, 0x10
jne 0x1011d619
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x5c]
push 0
push eax
push 0
push esi
call fcn.1011c5b0
add esp, 0x10
test eax, eax
je 0x1011d5b0
or ebx, 0x10
mov dword [edi + 8], ebx
jmp 0x1011d619
cmp ecx, 0xfffffffe
jne 0x1011d59a
push dword [esp + 0x2c]
mov dword [esp + 0x14], 0x24
call dword [0x101a7404]
mov edx, dword [esp + 0x14]
add esp, 4
jmp 0x1011d6a5
cmp ecx, 0xfffffffc
mov eax, 0x19
mov edx, 0x46
cmove eax, edx
mov dword [esp + 0x10], eax
jmp 0x1011d53a
mov eax, dword [esp + 0x3c]
test eax, eax
jns 0x1011d5f3
push 0
lea eax, [esp + 0x40]
push eax
push esi
call fcn.1011b870
mov ecx, eax
add esp, 0xc
mov eax, dword [esp + 0x3c]
test eax, eax
jns 0x1011d5f7
push 0
push 0
lea eax, [esp + 0x64]
push eax
push 0
push esi
call fcn.1011c750
add esp, 0x14
test eax, eax
je 0x1011d619
or dword [edi + 0xc], 0x100
jmp 0x1011d619
mov ecx, dword [esp + 0x40]
movzx edx, cl
mov word [edi + 0x18], dx
test al, 1
je 0x1011d615
mov eax, dword [esp + 0x60]
mov ecx, edx
movzx eax, byte [ecx + eax]
cmp ax, dx
je 0x1011d615
or dword [edi + 0xc], 0x20
or dword [edi + 0xc], 0x10
mov eax, dword [esp + 0x34]
test eax, eax
js 0x1011d654
test byte [edi + 8], 0x10
je 0x1011d62b
test al, 2
je 0x1011d654
mov ecx, dword [esp + 0x28]
movzx edx, cl
mov word [edi + 0x1a], dx
test al, 1
je 0x1011d650
mov eax, dword [esp + 0x60]
mov ecx, edx
movzx eax, byte [ecx + eax]
cmp ax, dx
je 0x1011d650
or dword [edi + 0xc], 0x80
or dword [edi + 0xc], 0x40
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x4c]
nop dword [eax]
push 0
lea eax, [esp + 0x60]
push eax
push dword [esp + 0x38]
push esi
push ebx
call fcn.1011b360
add esp, 0x14
test eax, eax
jne 0x1011d691
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x1011d660
mov eax, edi
jmp 0x1011d705
or dword [edi + 0xc], 0x8000
mov eax, edi
jmp 0x1011d705
mov edx, 0x38
mov dword [esp + 0x10], edx
cmp dword [esp + 0x94], 0x14
jle 0x1011d6c3
push dword [esp + 0x84]
call dword [0x101a7404]
mov edx, dword [esp + 0x14]
add esp, 4
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x1c]
sub eax, ebp
mov dword [ecx], eax
mov ebx, dword [esp + 0x48]
mov esi, edx
mov ecx, str.no_error
test esi, esi
jle 0x1011d6f7
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1011d6e0
cmp byte [ecx], al
je 0x1011d6f2
dec esi
test esi, esi
jg 0x1011d6e0
jmp 0x1011d6f7
mov ecx, str.Error_text_not_found__please_report_
mov eax, dword [esp + 0x58]
mov dword [eax], ecx
test ebx, ebx
je 0x1011d703
mov dword [ebx], edx
xor eax, eax
mov ecx, dword [esp + 0x11dc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1012fb43
add esp, 0x11d0
ret