Function at 0x1008f870
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100fb63d
mov eax, dword fs:[0]
push eax
mov eax, 0x2038
call fcn.100cb5e0
mov eax, dword [0x1012c140]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.lstrlenA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c250]
xor eax, eax
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa98], 0x6020
movups xmmword [ebp - 0xc10], xmm0
mov dword [ebp - 0xa94], 0
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, dword [ebp + 8]
test eax, eax
je 0x1008fa29
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x201c], edi
test edi, edi
je 0x1008fa29
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091d8b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091d92
mov dword [ebp - 4], eax
test esi, esi
je 0x1008f989
cmp edi, esi
jmp 0x1008f9c2
lea eax, [ebp - 0x2028]
mov dword [ebp - 0x2028], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x1008f9be
cmp edi, dword [eax + 0x10]
jae 0x1008f9c0
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x1008fa15
push str.lstrlenA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x201c]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.lstrcpyA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
xor eax, eax
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa98], 0x6020
movups xmmword [ebp - 0xc10], xmm0
mov dword [ebp - 0xa94], 0
push eax
call edi
test eax, eax
je 0x1008fbb6
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x1008fbb0
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091da3
cmp dword [0x1012be18], 0x7fffffff
je 0x10091daa
mov dword [ebp - 4], 1
test esi, esi
je 0x1008fb10
cmp edi, esi
jmp 0x1008fb49
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x1008fb45
cmp edi, dword [eax + 0x10]
jae 0x1008fb47
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x1008fb9c
push str.lstrcpyA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.lstrcpynA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6020
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x1008fd3d
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x1008fd37
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091dbb
cmp dword [0x1012be18], 0x7fffffff
je 0x10091dc2
mov dword [ebp - 4], 2
test esi, esi
je 0x1008fc97
cmp edi, esi
jmp 0x1008fcd0
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x1008fccc
cmp edi, dword [eax + 0x10]
jae 0x1008fcce
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x1008fd23
push str.lstrcpynA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010c134
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c250]
xor eax, eax
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa98], 0x6024
movups xmmword [ebp - 0xc10], xmm0
mov dword [ebp - 0xa94], 0
push eax
call edi
test eax, eax
je 0x1008fec4
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x1008febe
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091dd3
cmp dword [0x1012be18], 0x7fffffff
je 0x10091dda
mov dword [ebp - 4], 3
test esi, esi
je 0x1008fe1e
cmp edi, esi
jmp 0x1008fe57
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x1008fe53
cmp edi, dword [eax + 0x10]
jae 0x1008fe55
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x1008feaa
push 0x1010c134
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.lstrcpyW
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6024
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x1009004b
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10090045
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091deb
cmp dword [0x1012be18], 0x7fffffff
je 0x10091df2
mov dword [ebp - 4], 4
test esi, esi
je 0x1008ffa5
cmp edi, esi
jmp 0x1008ffde
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x1008ffda
cmp edi, dword [eax + 0x10]
jae 0x1008ffdc
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090031
push str.lstrcpyW
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.lstrcpynW
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6024
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x100901d2
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x100901cc
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e03
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e0a
mov dword [ebp - 4], 5
test esi, esi
je 0x1009012c
cmp edi, esi
jmp 0x10090165
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090161
cmp edi, dword [eax + 0x10]
jae 0x10090163
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x100901b8
push str.lstrcpynW
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010bb78
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c270]
add esp, 0x2c
mov eax, 4
mov dword [ebp - 0xa98], 0x6020
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
mov dword [ebp - 0xa94], 0
call edi
test eax, eax
je 0x1009035c
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10090356
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e1b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e22
mov dword [ebp - 4], 6
test esi, esi
je 0x100902b6
cmp edi, esi
jmp 0x100902ef
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x100902eb
cmp edi, dword [eax + 0x10]
jae 0x100902ed
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090342
push 0x1010bb78
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010bb8c
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c270]
add esp, 0x2c
mov eax, 4
mov dword [ebp - 0xa98], 0x6024
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
mov dword [ebp - 0xa94], 0
call edi
test eax, eax
je 0x100904e6
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x100904e0
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e33
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e3a
mov dword [ebp - 4], 7
test esi, esi
je 0x10090440
cmp edi, esi
jmp 0x10090479
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090475
cmp edi, dword [eax + 0x10]
jae 0x10090477
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x100904cc
push 0x1010bb8c
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.GetStringTypeA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c240]
add esp, 0x2c
mov eax, 4
mov dword [ebp - 0xa98], 0x6020
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
mov dword [ebp - 0xa94], 0
call edi
test eax, eax
je 0x10090670
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x1009066a
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e4b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e52
mov dword [ebp - 4], 8
test esi, esi
je 0x100905ca
cmp edi, esi
jmp 0x10090603
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x100905ff
cmp edi, dword [eax + 0x10]
jae 0x10090601
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090656
push str.GetStringTypeA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.GetStringTypeExA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c240]
add esp, 0x2c
mov eax, 4
mov dword [ebp - 0xa98], 0x6020
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
mov dword [ebp - 0xa94], 0
call edi
test eax, eax
je 0x100907fa
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x100907f4
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e63
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e6a
mov dword [ebp - 4], 9
test esi, esi
je 0x10090754
cmp edi, esi
jmp 0x1009078d
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090789
cmp edi, dword [eax + 0x10]
jae 0x1009078b
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x100907e0
push str.GetStringTypeExA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.FoldStringA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
add esp, 0x2c
mov dword [ebp - 0xa98], 0x6020
mov eax, 3
mov dword [ebp - 0xa94], 0
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x10090984
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x1009097e
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e7b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e82
mov dword [ebp - 4], 0xa
test esi, esi
je 0x100908de
cmp edi, esi
jmp 0x10090917
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090913
cmp edi, dword [eax + 0x10]
jae 0x10090915
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x1009096a
push str.FoldStringA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010c188
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
add esp, 0x2c
mov dword [ebp - 0xa98], 0x6024
mov eax, 3
mov dword [ebp - 0xa94], 0
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x10090b0e
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10090b08
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091e93
cmp dword [0x1012be18], 0x7fffffff
je 0x10091e9a
mov dword [ebp - 4], 0xb
test esi, esi
je 0x10090a68
cmp edi, esi
jmp 0x10090aa1
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090a9d
cmp edi, dword [eax + 0x10]
jae 0x10090a9f
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090af4
push 0x1010c188
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010c198
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movaps xmm0, xmmword [0x1010c240]
add esp, 0x2c
mov eax, 4
mov dword [ebp - 0xa98], 0x6024
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
mov dword [ebp - 0xa94], 0
call edi
test eax, eax
je 0x10090c98
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10090c92
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091eab
cmp dword [0x1012be18], 0x7fffffff
je 0x10091eb2
mov dword [ebp - 4], 0xc
test esi, esi
je 0x10090bf2
cmp edi, esi
jmp 0x10090c2b
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090c27
cmp edi, dword [eax + 0x10]
jae 0x10090c29
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090c7e
push 0x1010c198
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.kernel32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.FoldStringW
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
add esp, 0x2c
mov dword [ebp - 0xa98], 0x6024
mov eax, 3
mov dword [ebp - 0xa94], 0
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x10090e22
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10090e1c
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091ec3
cmp dword [0x1012be18], 0x7fffffff
je 0x10091eca
mov dword [ebp - 4], 0xd
test esi, esi
je 0x10090d7c
cmp edi, esi
jmp 0x10090db5
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090db1
cmp edi, dword [eax + 0x10]
jae 0x10090db3
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090e08
push str.FoldStringW
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010bb60
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c220]
xor eax, eax
mov dword [ebp - 0xa98], 0x6100
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x10090fa9
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10090fa3
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091edb
cmp dword [0x1012be18], 0x7fffffff
je 0x10091ee2
mov dword [ebp - 4], 0xe
test esi, esi
je 0x10090f03
cmp edi, esi
jmp 0x10090f3c
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10090f38
cmp edi, dword [eax + 0x10]
jae 0x10090f3a
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10090f8f
push 0x1010bb60
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.CharNextW
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c220]
xor eax, eax
mov dword [ebp - 0xa98], 0x6104
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x10091130
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x1009112a
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091ef3
cmp dword [0x1012be18], 0x7fffffff
je 0x10091efa
mov dword [ebp - 4], 0xf
test esi, esi
je 0x1009108a
cmp edi, esi
jmp 0x100910c3
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x100910bf
cmp edi, dword [eax + 0x10]
jae 0x100910c1
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10091116
push str.CharNextW
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push 0x1010bb6c
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c220]
xor eax, eax
mov dword [ebp - 0xa98], 0x6100
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x100912b7
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x100912b1
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f0b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091f12
mov dword [ebp - 4], 0x10
test esi, esi
je 0x10091211
cmp edi, esi
jmp 0x1009124a
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10091246
cmp edi, dword [eax + 0x10]
jae 0x10091248
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x1009129d
push 0x1010bb6c
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.CharPrevW
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c220]
xor eax, eax
mov dword [ebp - 0xa98], 0x6104
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x1009143e
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10091438
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f23
cmp dword [0x1012be18], 0x7fffffff
je 0x10091f2a
mov dword [ebp - 4], 0x11
test esi, esi
je 0x10091398
cmp edi, esi
jmp 0x100913d1
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x100913cd
cmp edi, dword [eax + 0x10]
jae 0x100913cf
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10091424
push str.CharPrevW
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.CharNextExA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6100
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x100915c5
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x100915bf
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f3b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091f42
mov dword [ebp - 4], 0x12
test esi, esi
je 0x1009151f
cmp edi, esi
jmp 0x10091558
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10091554
cmp edi, dword [eax + 0x10]
jae 0x10091556
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x100915ab
push str.CharNextExA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.CharPrevExA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6104
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x1009174c
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10091746
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f53
cmp dword [0x1012be18], 0x7fffffff
je 0x10091f5a
mov dword [ebp - 4], 0x13
test esi, esi
je 0x100916a6
cmp edi, esi
jmp 0x100916df
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x100916db
cmp edi, dword [eax + 0x10]
jae 0x100916dd
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10091732
push str.CharPrevExA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.wvsprintfA
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6020
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x100918d3
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x100918cd
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f6b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091f72
mov dword [ebp - 4], 0x14
test esi, esi
je 0x1009182d
cmp edi, esi
jmp 0x10091866
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10091862
cmp edi, dword [eax + 0x10]
jae 0x10091864
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x100918b9
push str.wvsprintfA
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
mov esi, dword [ebp + 8]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0xa00
lea eax, [ebp - 0xc18]
push 0
push eax
call fcn.100cc5f0
push 0x77
push str.user32.dll
lea eax, [ebp - 0xc00]
push 0x78
push eax
call fcn.100d72b2
push 0x77
push str.wvsprintfW
lea eax, [ebp - 0xb10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c230]
xor eax, eax
mov dword [ebp - 0xa98], 0x6024
add esp, 0x2c
mov word [ebp - 0xa8c], ax
lea eax, [ebp - 0xc00]
mov dword [ebp - 0xa94], 0
movups xmmword [ebp - 0xc10], xmm0
push eax
call edi
test eax, eax
je 0x10091a51
lea eax, [ebp - 0xb10]
push eax
lea eax, [ebp - 0xc00]
push eax
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10091a51
push 0x1012bdec
mov dword [ebp - 0x2024], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f83
cmp dword [0x1012be18], 0x7fffffff
je 0x10091f8a
mov dword [ebp - 4], 0x15
test esi, esi
je 0x100919b4
cmp edi, esi
jmp 0x100919ed
lea eax, [ebp - 0x201c]
mov dword [ebp - 0x201c], edi
push eax
lea eax, [ebp - 0x2038]
mov ecx, 0x10ca7640
push eax
call fcn.1001c8f0
mov eax, dword [ebp - 0x2030]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x100919e9
cmp edi, dword [eax + 0x10]
jae 0x100919eb
mov eax, ecx
cmp eax, ecx
sete al
test al, al
je 0x10091a3d
push str.wvsprintfW
sub esp, 0xa00
lea esi, [ebp - 0xc18]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x2034]
push eax
call fcn.1008b210
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
push str.OLEAUT32.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, eax
mov dword [ebp - 0x2024], esi
test esi, esi
je 0x10091d70
push 0xa00
lea eax, [ebp - 0x1618]
push 0
push eax
call fcn.100cc5f0
add esp, 0xc
lea eax, [ebp - 0x420]
push 0x104
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x10091abe
lea eax, [ebp - 0x420]
push 0x5c
push eax
call fcn.100cc908
push 0x77
add eax, 2
push eax
lea eax, [ebp - 0x1600]
push 0x78
push eax
call fcn.100d72b2
add esp, 0x18
push 0x77
push str.SysAllocString
lea eax, [ebp - 0x1510]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c220]
add esp, 0x10
mov dword [ebp - 0x1498], 0x6024
xor eax, eax
mov dword [ebp - 0x1494], 0
mov word [ebp - 0x148c], ax
lea eax, [ebp - 0x1510]
movups xmmword [ebp - 0x1610], xmm0
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
mov dword [ebp - 0x2028], edi
test edi, edi
je 0x10091bf3
push 0x1012bdec
mov dword [ebp - 0x2030], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091f9b
cmp dword [0x1012be18], 0x7fffffff
je 0x10091fa2
lea eax, [ebp - 0x201c]
mov dword [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x2044]
mov dword [ebp - 0x201c], edi
push eax
mov ecx, 0x10ca7640
call fcn.1001c8f0
mov eax, dword [ebp - 0x203c]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10091b8a
cmp edi, dword [eax + 0x10]
jae 0x10091b8c
mov eax, ecx
cmp eax, ecx
jne 0x10091bdf
push str.SysAllocString
sub esp, 0xa00
lea esi, [ebp - 0x1618]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x2028]
add esp, 0xa04
mov dword [ebp - 0x201c], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x201c]
push eax
lea eax, [ebp - 0x202c]
push eax
call fcn.1008b210
mov esi, dword [ebp - 0x2024]
push 0x1012bdec
mov dword [ebp - 4], 0xffffffff
call fcn.100b3fa0
add esp, 4
push 0xa00
lea eax, [ebp - 0x2018]
push 0
push eax
call fcn.100cc5f0
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x10091c45
lea eax, [ebp - 0x218]
push 0x5c
push eax
call fcn.100cc908
push 0x77
add eax, 2
push eax
lea eax, [ebp - 0x2000]
push 0x78
push eax
call fcn.100d72b2
add esp, 0x18
push 0x77
push str.SysAllocStringLen
lea eax, [ebp - 0x1f10]
push 0x78
push eax
call fcn.100d7646
movups xmm0, xmmword [0x1010c220]
add esp, 0x10
mov dword [ebp - 0x1e98], 0xe024
mov eax, 2
mov dword [ebp - 0x1e94], 0
mov word [ebp - 0x1e8c], ax
lea eax, [ebp - 0x1f10]
movups xmmword [ebp - 0x2010], xmm0
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
mov dword [ebp - 0x201c], esi
test esi, esi
je 0x10091d70
push 0x1012bdec
mov dword [ebp - 0x2030], 0x1012bdec
call fcn.100b3f8f
add esp, 4
test eax, eax
jne 0x10091fb3
cmp dword [0x1012be18], 0x7fffffff
je 0x10091fba
lea eax, [ebp - 0x2024]
mov dword [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x2044]
mov dword [ebp - 0x2024], esi
push eax
mov ecx, 0x10ca7640
call fcn.1001c8f0
mov eax, dword [ebp - 0x203c]
mov ecx, dword [0x10ca7640]
cmp byte [eax + 0xd], 0
jne 0x10091d14
cmp esi, dword [eax + 0x10]
jae 0x10091d16
mov eax, ecx
cmp eax, ecx
jne 0x10091d63
push str.SysAllocStringLen
sub esp, 0xa00
lea esi, [ebp - 0x2018]
mov ecx, 0x280
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.10006cb0
mov eax, dword [ebp - 0x201c]
add esp, 0xa04
mov dword [ebp - 0x2024], eax
mov ecx, 0x10ca7640
lea eax, [ebp - 0x2024]
push eax
lea eax, [ebp - 0x2020]
push eax
call fcn.1008b210
push 0x1012bdec
call fcn.100b3fa0
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100cb5ce
mov esp, ebp
pop ebp
ret
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
push 5
call fcn.100b42c5
push 6
mov dword [0x1012be18], 0x7ffffffe
call fcn.100b42c5
int3