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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4c964a
mov eax, dword fs:[0]
push eax
sub esp, 0x598
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x590], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x5a8]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x58], ebx
mov eax, dword [ebx + 0x24]
mov edx, dword [ebx + 0x20]
test eax, eax
ja 0x423b60
jb 0x4242fe
cmp edx, 0x16
jbe 0x4242fe
mov esi, edx
mov edi, eax
sub esi, 0x400
sbb edi, 0
js 0x423b75
jg 0x423b79
test esi, esi
jne 0x423b79
xor esi, esi
xor edi, edi
sub edx, esi
lea ecx, [ebx + 0x14]
mov dword [esp + 0x14], edx
sbb eax, edi
mov dword [esp + 0x18], eax
test eax, eax
jb 0x423ba3
ja 0x423b96
cmp edx, 0x400
jbe 0x423ba3
and dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x400
mov eax, dword [ecx]
push 0
push edi
push esi
call dword [eax + 0x18]
test al, al
je 0x4242fe
push dword [esp + 0x18]
lea eax, [esp + 0x1a0]
push dword [esp + 0x18]
lea ecx, [ebx + 0x14]
push eax
call fcn.00423ae0
test al, al
je 0x4242fe
mov eax, dword [esp + 0x14]
add eax, 0xfffffffc
js 0x423bf1
cmp dword [esp + eax + 0x19c], 0x6054b50
je 0x423bed
dec eax
jns 0x423bdd
test eax, eax
jns 0x423c3b
mov eax, esi
or eax, edi
je 0x4242fe
mov edx, dword [ebx + 0x20]
mov ecx, edx
mov eax, dword [ebx + 0x24]
sub ecx, esi
mov dword [esp + 0x18], eax
sbb eax, edi
test eax, eax
ja 0x4242fe
jb 0x423c21
cmp ecx, 0x10015
jae 0x4242fe
add esi, 0xfffffc03
adc edi, 0xffffffff
jne 0x423c32
test esi, esi
jne 0x423c32
xor edi, edi
mov eax, dword [esp + 0x18]
jmp 0x423b79
cdq
add esi, eax
push 0
adc edi, edx
and dword [esp + 0x11c], 0
mov dword [esp + 0x20], edi
xor eax, eax
push dword [esp + 0x20]
lea edi, [esp + 0x124]
stosd dword es:[edi], eax
push esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea edi, [ebx + 0x14]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test al, al
je 0x4242fe
push 0
push 0x16
lea eax, [esp + 0x120]
mov ecx, edi
push eax
call fcn.00423ae0
test al, al
je 0x4242fe
mov eax, dword [esp + 0x124]
xor ecx, ecx
mov dword [ebx + 0x528], eax
mov eax, dword [esp + 0x128]
mov dword [ebx + 0x530], eax
movzx eax, word [esp + 0x11c]
mov dword [ebx + 0x538], eax
movzx eax, word [esp + 0x11e]
mov dword [ebx + 0x53c], eax
mov ax, word [esp + 0x12c]
mov word [ebx + 0x540], ax
movzx eax, word [esp + 0x120]
cdq
mov dword [ebx + 0x548], eax
movzx eax, word [esp + 0x122]
mov dword [ebx + 0x54c], edx
cdq
mov dword [ebx + 0x550], eax
mov eax, 0xffff
mov dword [ebx + 0x52c], ecx
mov dword [ebx + 0x534], ecx
mov dword [ebx + 0x554], edx
cmp dword [ebx + 0x548], eax
jne 0x423e8e
cmp dword [ebx + 0x54c], ecx
jne 0x423e8e
cmp dword [ebx + 0x550], eax
jne 0x423e8e
cmp edx, ecx
jne 0x423e8e
mov dword [esp + 0x130], ecx
lea edi, [esp + 0x134]
xor eax, eax
sub esi, 0x14
stosd dword es:[edi], eax
push ecx
mov ecx, dword [esp + 0x20]
sbb ecx, 0
stosd dword es:[edi], eax
push ecx
push esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea edi, [ebx + 0x14]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x18]
test al, al
je 0x4242fe
push 0
push 0x14
lea eax, [esp + 0x138]
mov ecx, edi
push eax
call fcn.00423ae0
test al, al
je 0x4242fe
cmp dword [esp + 0x130], 0x7064b50
jne 0x4242fe
and dword [esp + 0x164], 0
lea eax, [esp + 0x168]
push 0x34
push 0
push eax
call sub.msvcrt.dll_memset
mov eax, dword [edi]
add esp, 0xc
mov ecx, edi
push 0
push dword [esp + 0x140]
push dword [esp + 0x140]
call dword [eax + 0x18]
test al, al
je 0x4242fe
push 0
push 0x38
lea eax, [esp + 0x16c]
mov ecx, edi
push eax
call fcn.00423ae0
test al, al
je 0x4242fe
cmp dword [esp + 0x164], 0x6064b50
jne 0x4242fe
mov eax, dword [esp + 0x18c]
xor ecx, ecx
mov dword [ebx + 0x528], eax
mov eax, dword [esp + 0x190]
mov dword [ebx + 0x52c], eax
mov eax, dword [esp + 0x194]
mov dword [ebx + 0x530], eax
mov eax, dword [esp + 0x198]
mov dword [ebx + 0x534], eax
mov eax, dword [esp + 0x174]
mov dword [ebx + 0x538], eax
mov eax, dword [esp + 0x178]
mov dword [ebx + 0x53c], eax
mov eax, dword [esp + 0x17c]
mov dword [ebx + 0x548], eax
mov eax, dword [esp + 0x180]
mov dword [ebx + 0x54c], eax
mov eax, dword [esp + 0x184]
mov dword [ebx + 0x550], eax
mov eax, dword [esp + 0x188]
mov byte [ebx + 0x542], 1
mov dword [ebx + 0x554], eax
mov eax, dword [ebx + 0x534]
mov esi, dword [ebx + 0x530]
mov dword [esp + 0x14], eax
mov dword [esp + 0x48], ecx
cmp dword [ebx + 0x554], ecx
jb 0x424324
ja 0x423ebc
cmp dword [ebx + 0x550], ecx
jbe 0x424324
push 0x2a
push ecx
lea eax, [esp + 0xf4]
mov dword [esp + 0xf0], ecx
push eax
call sub.msvcrt.dll_memset
mov eax, dword [edi]
add esp, 0xc
mov ecx, edi
push 0
push dword [esp + 0x18]
push esi
call dword [eax + 0x18]
test al, al
je 0x4242fe
push 0
push 0x2e
lea eax, [esp + 0xf0]
mov ecx, edi
push eax
call fcn.00423ae0
test al, al
je 0x4242fe
cmp dword [esp + 0xe8], 0x2014b50
jne 0x4242fe
mov eax, dword [esp + 0xfc]
xor ecx, ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x112]
mov dword [esp + 0x24], eax
movzx eax, word [esp + 0xf2]
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x4c]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0xf6]
push eax
call fcn.004bc78e
movzx eax, word [esp + 0x108]
add esi, 0x2e
pop ecx
adc dword [esp + 0x14], 0
lea ecx, [esp + 0x68]
push eax
mov dword [esp + 0x1c], esi
call fcn.0041eab3
and dword [esp + 0x5b0], 0
mov ecx, edi
mov eax, dword [esp + 0x78]
mov esi, dword [edi]
mov dword [esp + 0x60], eax
movzx eax, word [esp + 0x104]
cdq
push 0
push dword [esp + 0x18]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x20]
push eax
mov dword [esp + 0x2c], edx
call dword [esi + 0x18]
test al, al
je 0x4242e5
push dword [esp + 0x20]
mov ecx, edi
push dword [esp + 0x68]
push dword [esp + 0x68]
call fcn.00423ae0
test al, al
je 0x4242e5
movzx eax, word [esp + 0x104]
lea ecx, [esp + 0x40]
push 0xfde9
push eax
push dword [esp + 0x80]
call fcn.004b9de6
mov esi, dword [esp + 0x18]
mov byte [esp + 0x5b0], 1
movzx eax, word [esp + 0x104]
cdq
add esi, eax
mov dword [esp + 0x18], esi
adc dword [esp + 0x14], edx
cmp byte [ebx + 0x542], 0
je 0x4240f9
cmp word [esp + 0x106], 0
jbe 0x4240f9
push 7
xor eax, eax
lea edi, [esp + 0x14a]
pop ecx
mov word [esp + 0x144], ax
rep stosd dword es:[edi], eax
push 0
push dword [esp + 0x18]
stosw word es:[edi], ax
lea edi, [ebx + 0x14]
mov eax, dword [edi]
mov ecx, edi
push esi
call dword [eax + 0x18]
test al, al
je 0x4242cc
push 0
push 0x20
lea eax, [esp + 0x14c]
mov ecx, edi
push eax
call fcn.00423ae0
test al, al
je 0x4242cc
cmp dword [esp + 0x3c], 0xffffffff
jne 0x4240b1
cmp dword [esp + 0x2c], 0
jne 0x4240b1
mov eax, dword [esp + 0x150]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x2c], eax
cmp dword [esp + 0x30], 0xffffffff
jne 0x4240d5
cmp dword [esp + 0x28], 0
jne 0x4240d5
mov eax, dword [esp + 0x148]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x28], eax
cmp dword [esp + 0x24], 0xffffffff
jne 0x4240f9
cmp dword [esp + 0x1c], 0
jne 0x4240f9
mov eax, dword [esp + 0x158]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x15c]
mov dword [esp + 0x1c], eax
movzx eax, word [esp + 0x108]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [esp + 0x106]
cdq
add ecx, eax
lea eax, [esp + 0x40]
push eax
adc esi, edx
add dword [esp + 0x1c], ecx
lea ecx, [esp + 0x38]
adc dword [esp + 0x18], esi
call fcn.004b9cf7
mov dword [esp + 0x34], vtable.micro::files::QPathStr.0
mov byte [esp + 0x5b0], 2
mov edx, dword [esp + 0x38]
test edx, edx
je 0x424146
mov eax, dword [edx - 8]
jmp 0x424148
xor eax, eax
xor esi, esi
mov dword [esp + 0x20], eax
test eax, eax
jle 0x42418a
push 0x2f
mov edi, eax
pop ebx
movzx ecx, word [edx + esi*2]
call fcn.004bc9e7
test al, al
je 0x42417e
cmp cx, bx
je 0x42417e
lea ecx, [esp + 0x34]
call fcn.004ba8ec
mov edx, dword [esp + 0x38]
test edx, edx
je 0x42417e
mov word [edx + esi*2], bx
inc esi
cmp esi, edi
jl 0x424157
mov ebx, dword [esp + 0x58]
lea edi, [ebx + 0x14]
lea ecx, [esp + 0x7c]
call fcn.0040e57a
lea eax, [esp + 0x34]
mov byte [esp + 0x5b0], 3
push eax
lea ecx, [esp + 0x80]
call fcn.004ba6d4
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x40]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x5c]
movzx eax, ax
cdq
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0xa0], edx
mov dword [esp + 0xb8], eax
call fcn.004ba29d
mov ecx, eax
call fcn.004bc9e7
push 0x20
pop ecx
push 0x10
test al, al
lea eax, [esp + 0x80]
pop edx
cmovne ecx, edx
mov dword [esp + 0xac], ecx
lea ecx, [ebx + 0x30]
push eax
call fcn.004bbc49
lea ecx, [esp + 0x7c]
mov byte [esp + 0x5b0], 2
call fcn.0040e543
mov byte [esp + 0x5b0], 1
lea ecx, [esp + 0x34]
mov esi, vtable.micro::utils::QString.0
mov dword [esp + 0x34], esi
call fcn.004b9e50
mov byte [esp + 0x5b0], 0
lea ecx, [esp + 0x40]
mov dword [esp + 0x40], esi
call fcn.004b9e50
or dword [esp + 0x5b0], 0xffffffff
lea ecx, [esp + 0x68]
mov dword [esp + 0x68], vtable.micro::utils::QBuffer.0
call fcn.004044fd
mov eax, dword [esp + 0x48]
inc eax
mov dword [esp + 0x48], eax
cdq
cmp edx, dword [ebx + 0x554]
ja 0x424324
jb 0x4242c1
cmp eax, dword [ebx + 0x550]
jae 0x424324
mov esi, dword [esp + 0x18]
xor ecx, ecx
jmp 0x423ebc
mov byte [esp + 0x5b0], 0
lea ecx, [esp + 0x40]
mov dword [esp + 0x40], vtable.micro::utils::QString.0
call fcn.004b9e50
or dword [esp + 0x5b0], 0xffffffff
lea ecx, [esp + 0x68]
mov dword [esp + 0x68], vtable.micro::utils::QBuffer.0
call fcn.004044fd
xor al, al
mov ecx, dword [esp + 0x5a8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x590]
xor ecx, esp
call fcn.00401000
mov esp, ebp
pop ebp
ret
mov al, 1
jmp 0x424300