Function at 0x100536f0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x68
push esi
push edi
mov edi, ecx
mov dword [esp + 0x34], edi
mov byte [esp + 0x1c], 0x18
mov dl, 0x6c
xor dl, byte [esp + 0x1c]
mov al, 0x7a
xor al, byte [esp + 0x1c]
mov dh, 0x74
mov byte [esp + 0x1d], al
mov ah, 0x76
mov byte [esp + 0x1e], dl
xorps xmm0, xmm0
mov dl, byte [esp + 0x1c]
mov byte [esp + 0x1b], 0x77
xor ah, dl
mov al, byte [esp + 0x1b]
xor dh, dl
xor al, dl
mov byte [esp + 0x19], 0x6b
mov byte [esp + 0x23], al
mov al, byte [esp + 0x19]
xor al, dl
mov byte [esp + 0x1a], 0x7d
mov byte [esp + 0x24], al
mov al, byte [esp + 0x1a]
mov cl, 0x47
mov ch, 0x7b
mov byte [esp + 0x26], 0
xor cl, dl
mov byte [esp + 0x22], dh
xor ch, dl
mov byte [esp + 0x20], cl
mov byte [esp + 0x21], ch
xor al, dl
lea ecx, [esp + 0x1d]
mov byte [esp + 0x1f], ah
lea edx, [ecx + 1]
mov byte [esp + 0x25], al
mov byte [esp + 0x26], 0
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10053794
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo]
mov dword [esp + 0x14], eax
je 0x1005383c
test eax, eax
je 0x1005383c
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1005383c
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x38], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10053838
cmp edi, dword [eax + 0xc4]
jne 0x100537ee
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x3c], eax
test eax, eax
je 0x1005381e
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10053804
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1005386f
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x10053830
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x38]
jne 0x100537e4
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 4], eax
cmp ecx, 0xf
jbe 0x10053883
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10053879
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10053879
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x34]
jmp 0x1005383e
push ecx
push edx
call fcn.1007d105
add esp, 8
mov dl, 0x75
mov dword [esp + 0x1c], 0x1b011775
mov dword [esp + 0x20], 0x714022a
xor ecx, ecx
mov dword [esp + 0x24], 0x71a1c07
mov byte [esp + 0x28], 0
lea eax, [esp + 0x1d]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x100538b7
mov dl, byte [esp + 0x1c]
jmp 0x100538a4
xorps xmm0, xmm0
mov byte [esp + 0x28], 0
lea ecx, [esp + 0x1d]
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
lea edx, [ecx + 1]
mov dword [esp + 0x54], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100538e0
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x10053988
test eax, eax
je 0x10053988
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10053988
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10053984
nop
cmp edi, dword [eax + 0xc4]
jne 0x1005393a
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x1005396a
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10053950
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x100539bb
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x1005397c
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10053930
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 8], eax
cmp ecx, 0xf
jbe 0x100539cf
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100539c5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100539c5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x1005398a
push ecx
push edx
call fcn.1007d105
add esp, 8
mov byte [esp + 0x1c], 0x2d
mov cl, 0x59
xor cl, byte [esp + 0x1c]
mov al, 0x4f
xor al, byte [esp + 0x1c]
mov ch, 0x5f
mov byte [esp + 0x1d], al
mov dl, 0x43
mov byte [esp + 0x1e], cl
mov dh, 0x42
mov cl, byte [esp + 0x1c]
mov ah, 0x72
mov byte [esp + 0x1a], 0x4a
xor dl, cl
mov al, byte [esp + 0x1a]
xor ch, cl
xor al, cl
mov byte [esp + 0x19], 0x58
mov byte [esp + 0x23], al
xor dh, cl
mov al, byte [esp + 0x19]
xor ah, cl
xor al, cl
mov byte [esp + 0x1b], 0x48
mov byte [esp + 0x24], al
xorps xmm0, xmm0
mov al, byte [esp + 0x1b]
xor al, cl
mov byte [esp + 0x21], ch
lea ecx, [esp + 0x1d]
mov byte [esp + 0x26], 0
mov byte [esp + 0x1f], dl
mov byte [esp + 0x22], dh
lea edx, [ecx + 1]
mov byte [esp + 0x20], ah
mov byte [esp + 0x25], al
mov byte [esp + 0x26], 0
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10053a62
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x10053b0c
test eax, eax
je 0x10053b0c
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10053b0c
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10053b08
cmp edi, dword [eax + 0xc4]
jne 0x10053abe
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x10053aee
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10053ad4
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10053b3f
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x10053b00
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10053ab4
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0xc], eax
cmp ecx, 0xf
jbe 0x10053b53
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10053b49
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10053b49
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x10053b0e
push ecx
push edx
call fcn.1007d105
add esp, 8
mov byte [esp + 0x1c], 0xc
mov cl, 0x78
xor cl, byte [esp + 0x1c]
mov al, 0x6e
xor al, byte [esp + 0x1c]
mov ch, 0x61
mov byte [esp + 0x1d], al
mov dl, 0x62
mov byte [esp + 0x1e], cl
mov dh, 0x6d
mov cl, byte [esp + 0x1c]
mov ah, 0x53
mov byte [esp + 0x1a], 0x6b
xor dl, cl
mov al, byte [esp + 0x1a]
xor ch, cl
xor al, cl
mov byte [esp + 0x19], 0x69
xor dh, cl
mov byte [esp + 0x23], al
mov al, byte [esp + 0x19]
xor ah, cl
xor al, cl
mov byte [esp + 0x21], ch
xorps xmm0, xmm0
mov byte [esp + 0x25], 0
lea ecx, [esp + 0x1d]
mov byte [esp + 0x1f], dl
mov byte [esp + 0x22], dh
lea edx, [ecx + 1]
mov byte [esp + 0x20], ah
mov byte [esp + 0x24], al
mov byte [esp + 0x25], 0
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10053bd7
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x10053c88
test eax, eax
je 0x10053c88
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10053c88
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10053c84
nop dword [eax]
cmp edi, dword [eax + 0xc4]
jne 0x10053c3a
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x10053c6a
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10053c50
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10053cbb
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x10053c7c
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10053c30
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x10], eax
cmp ecx, 0xf
jbe 0x10053ccf
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10053cc5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10053cc5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x10053c8a
push ecx
push edx
call fcn.1007d105
add esp, 8
mov cl, 0x31
mov byte [esp + 0x1c], 0x45
mov byte [esp + 0x6f], cl
mov al, 0x27
xor al, byte [esp + 0x1c]
mov ch, 0x35
xor cl, byte [esp + 0x1c]
mov dl, 0x2b
mov byte [esp + 0x1d], al
mov dh, 0x37
mov byte [esp + 0x1e], cl
mov ah, 0x1a
mov cl, byte [esp + 0x1c]
xorps xmm0, xmm0
mov byte [esp + 0x1a], 0x2c
xor dl, cl
mov al, byte [esp + 0x1a]
xor ch, cl
xor al, cl
mov byte [esp + 0x19], 0x20
mov byte [esp + 0x23], al
xor dh, cl
mov al, byte [esp + 0x19]
xor ah, cl
xor al, cl
mov byte [esp + 0x1b], 0x36
mov byte [esp + 0x24], al
mov al, byte [esp + 0x1b]
xor al, cl
mov byte [esp + 0x21], ch
mov byte [esp + 0x25], al
mov al, byte [esp + 0x6f]
xor al, cl
mov byte [esp + 0x27], 0
lea ecx, [esp + 0x1d]
mov byte [esp + 0x1f], dl
mov byte [esp + 0x22], dh
lea edx, [ecx + 1]
mov byte [esp + 0x20], ah
mov byte [esp + 0x26], al
mov byte [esp + 0x27], 0
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10053d70
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x10053e1a
test eax, eax
je 0x10053e1a
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10053e1a
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10053e16
cmp edi, dword [eax + 0xc4]
jne 0x10053dcc
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x10053dfc
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10053de2
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10053e4d
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x10053e0e
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10053dc2
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x14], eax
cmp ecx, 0xf
jbe 0x10053e61
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10053e57
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10053e57
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x10053e1c
push ecx
push edx
call fcn.1007d105
add esp, 8
movaps xmm0, xmmword [0x10089cb0]
xor ecx, ecx
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x2c], 0x474f4b
mov al, byte [esp + 0x1c]
xor byte [esp + ecx + 0x1d], al
inc ecx
cmp ecx, 0x12
jb 0x10053e77
xorps xmm0, xmm0
mov byte [esp + 0x2f], 0
lea ecx, [esp + 0x1d]
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
lea edx, [ecx + 1]
mov dword [esp + 0x54], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10053eb0
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x10053f58
test eax, eax
je 0x10053f58
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10053f58
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10053f54
nop
cmp edi, dword [eax + 0xc4]
jne 0x10053f0a
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x10053f3a
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10053f20
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10053f8b
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x10053f4c
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10053f00
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x18], eax
cmp ecx, 0xf
jbe 0x10053f9f
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10053f95
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10053f95
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x10053f5a
push ecx
push edx
call fcn.1007d105
add esp, 8
movaps xmm0, xmmword [str.S_f8:___f0_]
xor ecx, ecx
movups xmmword [esp + 0x1c], xmm0
nop dword [eax]
mov al, byte [esp + 0x1c]
xor byte [esp + ecx + 0x1d], al
inc ecx
cmp ecx, 0xe
jb 0x10053fb0
xorps xmm0, xmm0
mov byte [esp + 0x2b], 0
lea ecx, [esp + 0x1d]
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
lea edx, [ecx + 1]
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10053fe2
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x10054088
test eax, eax
je 0x10054088
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10054088
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10054084
cmp edi, dword [eax + 0xc4]
jne 0x1005403a
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x1005406a
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10054050
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x100540bb
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x1005407c
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10054030
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x1c], eax
cmp ecx, 0xf
jbe 0x100540cf
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100540c5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100540c5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x1005408a
push ecx
push edx
call fcn.1007d105
add esp, 8
movaps xmm0, xmmword [0x10089410]
xor ecx, ecx
movups xmmword [esp + 0x1c], xmm0
mov byte [esp + 0x2c], 0
mov al, byte [esp + 0x1c]
xor byte [esp + ecx + 0x1d], al
inc ecx
cmp ecx, 0xf
jb 0x100540e2
xorps xmm0, xmm0
mov byte [esp + 0x2c], 0
lea ecx, [esp + 0x1d]
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
lea edx, [ecx + 1]
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10054114
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x100541ba
test eax, eax
je 0x100541ba
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100541ba
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x100541b6
cmp edi, dword [eax + 0xc4]
jne 0x1005416c
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x1005419c
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10054182
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x100541ed
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x100541ae
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x10054162
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x20], eax
cmp ecx, 0xf
jbe 0x10054201
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100541f7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100541f7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x100541bc
push ecx
push edx
call fcn.1007d105
add esp, 8
movaps xmm0, xmmword [0x10089af0]
xor ecx, ecx
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x2c], 0x746f7579
mov word [esp + 0x30], 0x6e
nop
mov al, byte [esp + 0x1c]
xor byte [esp + ecx + 0x1d], al
inc ecx
cmp ecx, 0x14
jb 0x10054220
xorps xmm0, xmm0
mov byte [esp + 0x31], 0
lea ecx, [esp + 0x1d]
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
lea edx, [ecx + 1]
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10054252
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x100542fc
test eax, eax
je 0x100542fc
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100542fc
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x100542f8
cmp edi, dword [eax + 0xc4]
jne 0x100542ae
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x100542de
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x100542c4
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1005432f
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x100542f0
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x100542a4
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x24], eax
cmp ecx, 0xf
jbe 0x10054343
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10054339
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10054339
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x100542fe
push ecx
push edx
call fcn.1007d105
add esp, 8
movaps xmm0, xmmword [0x1008a150]
xor ecx, ecx
movups xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x2c], 0x74784477
mov dword [esp + 0x30], 0x6f756e
mov al, byte [esp + 0x1c]
xor byte [esp + ecx + 0x1d], al
inc ecx
cmp ecx, 0x16
jb 0x10054361
xorps xmm0, xmm0
mov byte [esp + 0x33], 0
lea ecx, [esp + 0x1d]
movaps xmmword [esp + 0x40], xmm0
mov dword [esp + 0x50], 0
lea edx, [ecx + 1]
mov dword [esp + 0x54], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10054393
sub ecx, edx
lea eax, [esp + 0x1d]
push ecx
push eax
lea ecx, [esp + 0x48]
call fcn.100024a0
cmp dword [esp + 0x50], 0
mov eax, dword [edi]
mov dword [esp + 0x14], eax
je 0x1005443d
test eax, eax
je 0x1005443d
push 4
push eax
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1005443d
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0xc4]
mov dword [esp + 0x3c], ecx
mov edi, dword [ecx]
cmp edi, ecx
je 0x10054439
cmp edi, dword [eax + 0xc4]
jne 0x100543ef
call esi
mov eax, dword [edi + 8]
mov dword [esp + 0x38], eax
test eax, eax
je 0x1005441f
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10054405
mov ecx, dword [ecx]
cmp dword [esp + 0x54], 0xf
lea eax, [esp + 0x40]
cmova eax, dword [esp + 0x40]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10054470
mov eax, dword [esp + 0x14]
cmp edi, dword [eax + 0xc4]
jne 0x10054431
call esi
mov eax, dword [esp + 0x14]
mov edi, dword [edi]
cmp edi, dword [esp + 0x3c]
jne 0x100543e5
mov edi, dword [esp + 0x34]
xor eax, eax
mov ecx, dword [esp + 0x54]
mov dword [edi + 0x28], eax
cmp ecx, 0xf
jbe 0x10054484
mov edx, dword [esp + 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005447a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1005447a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 0x34]
jmp 0x1005443f
push ecx
push edx
call fcn.1007d105
add esp, 8
mov ecx, edi
call fcn.100544e0
mov esi, dword [edi]
test esi, esi
je 0x100544ad
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100544ad
lea ecx, [esi + 0xd4]
call fcn.10014f70
mov esi, eax
jmp 0x100544af
xor esi, esi
mov edi, dword [edi]
test edi, edi
je 0x100544ce
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100544ce
or esi, 0x38
mov ecx, edi
push esi
call dword [0x10088b28]
pop edi
pop esi
mov esp, ebp
pop ebp
ret