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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd8
mov esi, esp
mov dword [esi + 0xc0], ebp
mov dword [esi + 0xc4], esp
mov dword [esi + 0xd0], 0xffffffff
mov dword [esi + 0xcc], 0x578040
mov edi, edx
movzx eax, byte [ebp + 0xc]
mov dword [esi + 0x18], ecx
mov edx, dword fs:[0]
mov dword [esi + 0xc8], edx
lea edx, [esi + 0xc8]
mov dword fs:[0], edx
mov ebx, dword [edi + 0x18]
mov edx, dword [ecx + 0x20]
cmp byte [ebx + 0x4d], 0
mov dword [esi + 0x50], edx
je 0x42d767
test al, al
je 0x42d77b
cmp dword [esi + 0x50], 0
mov eax, 0x58b245
mov ecx, 0x58b24e
jmp 0x42d799
test al, al
je 0x42d78b
cmp dword [esi + 0x50], 0
mov eax, 0x58b22a
mov ecx, 0x58b233
jmp 0x42d799
cmp dword [esi + 0x50], 0
mov eax, 0x58b218
mov ecx, 0x58b23c
jmp 0x42d799
cmp dword [esi + 0x50], 0
mov eax, 0x58b218
mov ecx, 0x58b221
cmove ecx, eax
mov eax, dword [edi + 4]
mov dword [esi + 0xc], edi
mov edi, dword [edi + 8]
mov dword [esi + 0x54], ebx
mov dword [esi], ecx
test edi, edi
je 0x42d7dc
mov dword [esi + 4], eax
js 0x42e409
movzx eax, byte [0x5fd2ec]
xor ecx, ecx
mov edx, edi
call fcn.0056a9f0
mov ebx, eax
test eax, eax
mov eax, dword [esi + 4]
jne 0x42d7e1
mov ecx, 1
mov edx, edi
call fcn.0057f230
mov ebx, 1
push edi
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [esi + 0x24], edi
mov dword [esi + 0x28], ebx
mov dword [esi + 0x2c], edi
mov dword [esi + 0xd0], 0
lea ecx, [esi + 0x24]
mov edx, edi
push 9
call fcn.0057bdc0
add esp, 4
mov ecx, dword [esi + 0x24]
mov edi, dword [esi]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x9c], ecx
mov ecx, dword [esi + 0x28]
movzx edx, byte [edi + 8]
mov byte [ecx + eax + 8], dl
lea edx, [eax + 9]
mov dword [esi + 0x5c], ecx
movq xmm0, qword [edi]
cmp edx, 0x10
mov dword [esi + 0x4c], edx
movq qword [ecx + eax], xmm0
jae 0x42d8d0
xor edi, edi
test edx, edx
je 0x42d8d7
cmp edx, 8
mov ecx, 0
jb 0x42d8b3
mov ecx, dword [esi + 0x5c]
movdqa xmm1, xmmword [0x589390]
movdqa xmm2, xmmword [0x5893a0]
movd xmm0, dword [ecx + 4]
movd xmm3, dword [ecx]
mov ecx, 8
pcmpgtb xmm0, xmm1
pcmpgtb xmm3, xmm1
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
pand xmm0, xmm2
punpcklbw xmm3, xmm3
punpcklwd xmm3, xmm3
pand xmm3, xmm2
paddd xmm3, xmm0
pshufd xmm0, xmm3, 0xee
paddd xmm0, xmm3
pshufd xmm1, xmm0, 0x55
paddd xmm1, xmm0
movd edi, xmm1
je 0x42d8d7
sub eax, ecx
add ecx, dword [esi + 0x5c]
add eax, 9
nop dword [eax + eax]
xor edx, edx
cmp byte [ecx], 0xc0
setge dl
inc ecx
add edi, edx
dec eax
jne 0x42d8c0
jmp 0x42d8d7
call fcn.004ae360
mov edi, eax
mov eax, dword [esi + 0x54]
dec edi
shr edi, 1
dec edi
cmp byte [eax + 0x50], 0
je 0x42d9e6
lea eax, [esi + 0x64]
mov dword [esi + 0x90], 0
mov dword [esi + 0x84], 0x20
mov byte [esi + 0x94], 3
mov dword [esi + 0x74], 0
mov dword [esi + 0x7c], 0
cmp edi, 0x2710
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 1
mov dword [esi + 0x6c], 0
mov dword [esi + 0x88], eax
mov eax, 0x27
mov dword [esi + 0x8c], 0x58a314
jb 0x42daa0
mov ebx, 0x27
nop
mov eax, edi
mov ecx, 0xd1b71759
mov dword [esi], edi
mul ecx
mov eax, edi
shr edx, 0xd
imul ecx, edx, 0x2710
sub eax, ecx
imul ecx, eax, 0x147b
shr ecx, 0x13
imul edi, ecx, 0x64
movzx ecx, word [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899assertion_failed:_curr___19__Y]
sub eax, edi
cmp dword [esi], 0x5f5e0ff
mov edi, edx
movzx eax, ax
movzx eax, word [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899assertion_failed:_curr___19__Y]
mov word [esi + ebx + 0x20], cx
mov word [esi + ebx + 0x22], ax
lea eax, [ebx - 4]
mov ebx, eax
ja 0x42d950
cmp edx, 0x63
jbe 0x42d9d0
movzx ecx, dx
shr ecx, 2
imul ecx, ecx, 0x147b
shr ecx, 0x11
imul edi, ecx, 0x64
sub edx, edi
movzx edx, dx
movzx edx, word [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899assertion_failed:_curr___19__Y]
mov word [esi + eax + 0x22], dx
add eax, 0xfffffffe
mov edx, ecx
cmp edx, 0xa
jae 0x42dab0
add dl, 0x30
mov byte [esi + eax + 0x23], dl
dec eax
jmp 0x42dac0
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esi + 0x58], ecx
mov ecx, dword [edx + 0x10]
mov edx, dword [edx + 0x14]
mov dword [esi], eax
cmp edx, 0x10
mov dword [esi + 4], ecx
mov dword [esi + 0xc], edx
jae 0x42db07
xor eax, eax
test edx, edx
je 0x42db0c
cmp edx, 8
mov ebx, 0
jb 0x42da81
mov eax, dword [esi + 4]
movdqa xmm1, xmmword [0x589390]
movdqa xmm2, xmmword [0x5893a0]
mov ebx, 8
movd xmm0, dword [eax + 4]
movd xmm3, dword [eax]
pcmpgtb xmm0, xmm1
pcmpgtb xmm3, xmm1
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
pand xmm0, xmm2
punpcklbw xmm3, xmm3
punpcklwd xmm3, xmm3
pand xmm3, xmm2
paddd xmm3, xmm0
pshufd xmm0, xmm3, 0xee
paddd xmm0, xmm3
pshufd xmm1, xmm0, 0x55
paddd xmm1, xmm0
movd eax, xmm1
je 0x42db0c
mov ecx, dword [esi + 0xc]
sub ecx, ebx
add ebx, dword [esi + 4]
nop dword [eax]
xor edx, edx
cmp byte [ebx], 0xc0
setge dl
inc ebx
add eax, edx
dec ecx
jne 0x42da90
jmp 0x42db0c
mov edx, edi
cmp edx, 0x63
ja 0x42d9a7
jmp 0x42d9d0
movzx ecx, word [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899assertion_failed:_curr___19__Y]
mov word [esi + eax + 0x22], cx
add eax, 0xfffffffe
mov ebx, 0x27
mov dword [esi + 0xd0], 6
lea edi, [esi + eax + 0x24]
lea ecx, [esi + 0x74]
mov edx, 1
sub ebx, eax
push ebx
push edi
push 0
push str._rustc_aedd173a2c086e558c2b66d3743b344f977621a7librarycore_src_strpattern.rs
call fcn.004ae060
add esp, 0x10
test al, al
jne 0x42e40e
mov eax, dword [esi + 0x64]
mov edi, dword [esi + 0x68]
mov ebx, dword [esi + 0x6c]
mov dword [esi + 0x10], eax
jmp 0x42deaa
call fcn.004ae360
mov edx, dword [esi]
movd xmm0, dword [esi + 0x58]
mov ecx, dword [esi + 0x54]
mov ebx, eax
movd xmm2, edx
mov eax, dword [ecx + 4]
movsd xmm1, qword [ecx]
shr edx, 0x1f
punpckldq xmm0, xmm2
movq qword [esi + 0xb0], xmm0
fild qword [esi + 0xb0]
fnstcw word [esi + 0x62]
movzx ecx, word [esi + 0x62]
shr eax, 0x1f
or ecx, 0x300
mov word [esi + 0x9a], cx
fldcw word [esi + 0x9a]
fadd dword [edx*4 + 0x5893c8]
fldcw word [esi + 0x62]
fstp dword [esi + 0xa4]
movss xmm0, dword [esi + 0xa4]
movlps qword [esi + 0xb8], xmm1
movd xmm1, ebx
fild qword [esi + 0xb8]
fnstcw word [esi + 0x60]
por xmm1, xmmword [0x5893b0]
movzx ecx, word [esi + 0x60]
subsd xmm1, qword [0x5893c0]
or ecx, 0x300
mov word [esi + 0x98], cx
fldcw word [esi + 0x98]
cvtsd2ss xmm1, xmm1
fadd dword [eax*4 + 0x5893c8]
mov dword [esi], ebx
fldcw word [esi + 0x60]
fstp dword [esi + 0xa0]
divss xmm0, dword [esi + 0xa0]
ucomiss xmm0, dword [0x5893d0]
je 0x42dbda
movd eax, xmm0
test eax, 0x7f800000
jne 0x42dbdd
xorps xmm0, xmm0
mulss xmm0, xmm1
mov ecx, 0x7fffffff
mov dword [esi + 0x74], 0
mov dword [esi + 0x78], 1
mov dword [esi + 0x7c], 0
mov edx, 8
ucomiss xmm0, dword [0x5893d4]
cvttss2si eax, xmm0
cmovbe ecx, eax
xor eax, eax
ucomiss xmm0, xmm0
cmovp ecx, eax
cmp edi, 4
mov eax, 4
mov dword [esi + 0x10], ecx
cmovb eax, edi
mov ecx, 5
sub ecx, eax
test edi, edi
mov eax, 4
cmove ecx, eax
mov eax, dword [esi + 0x54]
mov dword [esi + 0x58], ecx
xor ecx, ecx
movzx ebx, byte [eax + 0x51]
movzx eax, byte [0x5fd2ec]
call fcn.0056a9f0
test bl, bl
mov byte [esi + 0x70], bl
je 0x42dc7d
mov ecx, dword [esi]
mov edi, 0x58b274
test eax, eax
jne 0x42dc8c
mov ecx, 4
mov edx, 8
mov dword [esi + 0xd0], 2
call fcn.0057f230
jmp 0x42e479
mov ecx, dword [esi]
mov edi, 0x58b258
test eax, eax
je 0x42e460
mov edx, dword [esi + 4]
mov ebx, dword [esi + 0xc]
sub ecx, dword [esi + 0x10]
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], edi
add ebx, edx
mov dword [eax], edx
mov dword [esi], ecx
mov dword [eax + 4], ebx
mov dword [esi + 0xd0], 5
mov eax, dword [edi + 0xc]
mov dword [esi + 4], eax
jmp 0x42dccd
mov edx, dword [esi + 0x7c]
mov eax, dword [esi + 0x78]
mov word [eax + edx], 0x96e2
mov byte [eax + edx + 2], 0x88
add edx, 3
mov dword [esi + 0x7c], edx
push dword [esi + 0xc]
call dword [esi + 4]
add esp, 4
cmp eax, 0x110000
je 0x42dd3c
mov ecx, dword [esi]
dec ecx
test ecx, ecx
mov dword [esi], ecx
jle 0x42dd10
cmp eax, 0x2588
jne 0x42dd30
mov eax, dword [esi + 0x58]
cmp eax, 5
jae 0x42e3f0
mov edx, dword [eax*4 + 0x58b204]
lea ecx, [esi + 0x74]
call fcn.004187e0
jmp 0x42dccd
mov eax, dword [esi + 0x74]
mov edx, dword [esi + 0x7c]
sub eax, edx
cmp eax, 2
ja 0x42dcb9
lea ecx, [esi + 0x74]
push 3
call fcn.0057bdc0
add esp, 4
jmp 0x42dcb6
lea ecx, [esi + 0x74]
mov edx, eax
call fcn.004187e0
jmp 0x42dccd
mov dword [esi + 0xd0], 4
push dword [esi + 0xc]
mov eax, dword [esi + 0x10]
call dword [eax]
add esp, 4
mov eax, dword [esi + 0x10]
cmp dword [eax + 4], 0
je 0x42dd7a
cmp dword [eax + 8], 9
jae 0x42dd65
mov eax, dword [esi + 0xc]
jmp 0x42dd6b
mov eax, dword [esi + 0xc]
mov eax, dword [eax - 4]
push eax
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp byte [esi + 0x70], 0
je 0x42dd91
mov eax, dword [esi + 0x74]
mov edi, dword [esi + 0x78]
mov ebx, dword [esi + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x42dea0
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x7c]
mov dword [esi + 0x24], 0
mov dword [esi + 0x28], 1
mov dword [esi + 0x2c], 0
mov dword [esi + 0xc], eax
lea ebx, [eax + ecx]
lea eax, [ecx + 3]
cmp eax, 4
jae 0x42ddd1
test ecx, ecx
jne 0x42ddf0
mov edi, 1
mov dword [esi + 0x10], 0
xor ebx, ebx
jmp 0x42de89
shr eax, 2
mov dword [esi], ebx
mov dword [esi + 0xd0], 3
lea ecx, [esi + 0x24]
xor edx, edx
push eax
call fcn.0057bdc0
add esp, 4
mov ebx, dword [esi]
movzx eax, byte [ebx - 1]
test al, al
js 0x42de10
dec ebx
movzx edx, al
mov dword [esi + 0xd0], 3
jmp 0x42de5e
movzx ecx, byte [ebx - 2]
cmp cl, 0xc0
jge 0x42de36
movzx edx, byte [ebx - 3]
cmp dl, 0xbf
jg 0x42de3e
movzx edi, byte [ebx - 4]
and edx, 0x3f
add ebx, 0xfffffffc
and edi, 7
shl edi, 6
or edx, edi
jmp 0x42de44
add ebx, 0xfffffffe
and ecx, 0x1f
jmp 0x42de4c
add ebx, 0xfffffffd
and edx, 0xf
shl edx, 6
and ecx, 0x3f
or ecx, edx
and al, 0x3f
shl ecx, 6
movzx edx, al
or edx, ecx
cmp edx, 0x110000
je 0x42de7d
lea ecx, [esi + 0x24]
mov dword [esi], ebx
mov dword [esi + 0xd0], 3
call fcn.004187e0
mov ebx, dword [esi]
cmp ebx, dword [esi + 0xc]
jne 0x42ddf0
mov eax, dword [esi + 0x24]
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x2c]
mov dword [esi + 0x10], eax
cmp dword [esi + 0x74], 0
je 0x42dea0
push dword [esi + 0xc]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov dword [esi + 0xd0], 7
movzx eax, byte [ebp + 8]
mov edx, dword [esi + 0x18]
mov byte [esi + 0x17], 1
mov dword [esi + 0xd0], 7
lea ecx, [esi + 0x64]
movzx eax, al
push dword [esi + 0x54]
push eax
mov dword [esi + 0xc], ebx
push ebx
mov dword [esi + 0x70], edi
push edi
push dword [esi + 0x4c]
push dword [esi + 0x5c]
call fcn.0042f8b0
add esp, 0x18
mov eax, dword [esi + 0x54]
movzx eax, byte [eax + 0x4d]
test al, al
mov byte [esi + 0x58], al
jne 0x42df32
lea ecx, [esi + 0x74]
lea eax, [esi + 0x64]
mov dword [esi + 0x24], 0x5a0a98
mov dword [esi + 0x28], 2
mov dword [esi + 0x34], 0
mov byte [esi + 0xb], 1
mov dword [esi + 0xd0], 8
mov dword [esi + 0x2c], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 0x74], eax
mov dword [esi + 0x78], 0x41aa30
mov dword [esi + 0x30], 1
call fcn.00568c50
mov edx, dword [esi + 0x4c]
test edx, edx
je 0x42df76
js 0x42e430
movzx eax, byte [0x5fd2ec]
mov edx, dword [esi + 0x4c]
xor ecx, ecx
call fcn.0056a9f0
mov edx, dword [esi + 0x4c]
mov edi, eax
test eax, eax
jne 0x42df7b
mov ecx, 1
mov byte [esi + 0xb], 1
mov dword [esi + 0xd0], 8
call fcn.0057f230
jmp 0x42e479
mov edi, 1
push edx
push dword [esi + 0x5c]
push edi
mov ebx, edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], ebx
mov dword [esi + 0xd0], 9
lea ecx, [esi + 0x24]
mov dword [esi], edi
mov edx, edi
push 2
push 0x59b7d0
push 9
push 0x58b24e
push ebx
call fcn.004177f0
add esp, 0x14
cmp dword [esi + 0x4c], 0
je 0x42dfce
push dword [esi]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 2
push 0x59b7d0
push 9
push 0x58b245
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e012
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 4
push str._l
push 9
push 0x58b23c
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e056
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 1
push 0x5e94ca
push 6
push 0x58b2e8
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e09a
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 2
push 0x59b7d0
push 9
push 0x58b233
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e0de
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 2
push 0x59b7d0
push 9
push 0x58b22a
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e122
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 4
push str._l
push 9
push 0x58b221
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e166
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 1
push 0x5e94ca
push 6
push 0x58b2ee
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e1aa
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1c], edx
mov dword [esi], ecx
mov dword [esi + 0x20], ecx
lea ecx, [esi + 0x24]
mov dword [esi + 4], edx
push 4
push str._l
push 9
push 0x58b218
push eax
call fcn.004177f0
add esp, 0x14
cmp dword [esi], 0
je 0x42e1ee
push dword [esi + 4]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esi + 0x24]
mov ecx, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x28], ecx
mov dword [esi + 0x2c], edx
xor ecx, ecx
mov edx, 8
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x70]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x54]
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x18]
mov edi, dword [eax + 0x1c]
movzx eax, byte [0x5fd2ec]
call fcn.0056a9f0
cmp byte [esi + 0x58], 0
je 0x42e25e
mov ebx, 0x58b408
test eax, eax
jne 0x42e26b
mov ecx, 4
mov edx, 8
mov dword [esi + 0xd0], 0xa
call fcn.0057f230
jmp 0x42e479
mov ebx, 0x58b3ec
test eax, eax
je 0x42e445
mov ecx, dword [esi + 0x50]
mov dword [eax], edi
mov dword [esi + 4], eax
mov dword [esi + 0x18], ebx
mov dword [esi], 0
lea edx, [ecx + ecx*4]
dec ecx
lea edx, [edi + edx*8]
mov dword [esi + 0x50], ecx
mov dword [eax + 4], edx
mov eax, dword [ebx + 0xc]
mov dword [esi + 0x4c], eax
nop
mov dword [esi + 0xd0], 0xc
push dword [esi + 4]
call dword [esi + 0x4c]
add esp, 4
test eax, eax
je 0x42e2e9
mov ecx, dword [esi + 0x54]
mov edi, dword [esi + 0x50]
mov edx, 0
cmp byte [ecx + 0x4d], 0
mov ecx, edi
cmove ecx, edx
cmove edx, edi
mov edi, dword [esi]
xor ebx, ebx
cmp edi, ecx
lea ecx, [edi + 1]
sete bl
mov dword [esi], ecx
mov ecx, eax
mov dword [esi + 0xc], ebx
xor ebx, ebx
cmp edi, edx
lea edx, [esi + 0x24]
sete bl
push ebx
push dword [esi + 0xc]
call fcn.0042d6f0
add esp, 8
jmp 0x42e290
mov dword [esi + 0xd0], 0xb
push dword [esi + 4]
mov eax, dword [esi + 0x18]
call dword [eax]
add esp, 4
mov eax, dword [esi + 0x18]
cmp dword [eax + 4], 0
je 0x42e327
cmp dword [eax + 8], 9
jae 0x42e312
mov eax, dword [esi + 4]
jmp 0x42e318
mov eax, dword [esi + 4]
mov eax, dword [eax - 4]
push eax
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp byte [esi + 0x58], 0
je 0x42e37d
lea ecx, [esi + 0xa8]
lea eax, [esi + 0x64]
mov dword [esi + 0x74], 0x5a0a98
mov dword [esi + 0x78], 2
mov dword [esi + 0x84], 0
mov dword [esi + 0xd0], 0xa
mov dword [esi + 0x7c], ecx
lea ecx, [esi + 0x74]
mov dword [esi + 0xa8], eax
mov dword [esi + 0xac], 0x41aa30
mov dword [esi + 0x80], 1
call fcn.00568c50
cmp dword [esi + 0x24], 0
je 0x42e394
push dword [esi + 0x28]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp dword [esi + 0x30], 0
je 0x42e3ab
push dword [esi + 0x34]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp dword [esi + 0x64], 0
je 0x42e3c2
push dword [esi + 0x68]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp dword [esi + 0x9c], 0
je 0x42e3dc
push dword [esi + 0x5c]
push 0
push dword [0x5fd290]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, dword [esi + 0xc8]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, 5
mov edx, 5
push 0x58b2a0
call fcn.0057f710
add esp, 4
jmp 0x42e479
call fcn.004634e0
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly
mov edx, 0x37
push 0x59f688
push 0x58a33c
lea eax, [esi + 0x24]
push eax
call fcn.0057fa90
add esp, 0xc
jmp 0x42e479
mov byte [esi + 0xb], 1
mov dword [esi + 0xd0], 8
call fcn.004634e0
jmp 0x42e479
mov ecx, 4
mov edx, 8
mov dword [esi + 0xd0], 0xa
call fcn.0057f230
jmp 0x42e479
mov ecx, 4
mov edx, 8
mov dword [esi + 0xd0], 2
call fcn.0057f230
ud2