Function at 0x10055d10
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10316bf5
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x1043900c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x48], edi
cmp byte [0x104a1910], 0
jne 0x10055db2
mov byte [0x104a1910], 1
xor edi, edi
xor edx, edx
mov eax, edi
xor eax, dword [0x104a1938]
xor edx, dword [0x104a193c]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov esi, dword [ebp - 0x44]
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor esi, eax
mov ecx, edx
mov eax, esi
shrd eax, ecx, 7
shr ecx, 7
xor esi, eax
xor edx, ecx
mov dword [ebp - 0x44], esi
mov ecx, esi
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [edi + 0x104a1911]
xor cl, byte [ebp - 0x44]
mov byte [edi + 0x104a1911], cl
inc edi
cmp edi, 0x24
jb 0x10055d51
mov edi, dword [ebp - 0x48]
push ecx
push 0x104a1934
push 0x104a1911
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x44], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10055e00
sub ecx, dword [ebp - 0x44]
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 1
mov ecx, 0x1036f1ac
push esp
call fcn.1006b520
mov byte [ebp - 4], 0
call fcn.1006d880
mov eax, dword [eax]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
mov dword [edi], eax
cmp ecx, 0x10
jb 0x10055e6d
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10055e63
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x104a0340], 0
jne 0x10055ee1
mov byte [0x104a0340], 1
xor edi, edi
nop
xor edx, edx
mov eax, edi
xor eax, dword [0x104a0360]
xor edx, dword [0x104a0364]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov esi, dword [ebp - 0x44]
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor esi, eax
mov ecx, edx
mov eax, esi
shrd eax, ecx, 7
shr ecx, 7
xor esi, eax
xor edx, ecx
mov dword [ebp - 0x44], esi
mov ecx, esi
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [edi + 0x104a0341]
xor cl, byte [ebp - 0x44]
mov byte [edi + 0x104a0341], cl
inc edi
cmp edi, 0x1a
jb 0x10055e80
mov edi, dword [ebp - 0x48]
push ecx
push 0x104a035a
push 0x104a0341
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 2
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x44], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10055f30
sub ecx, dword [ebp - 0x44]
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 3
mov ecx, 0x1036f1ac
push esp
call fcn.1006b520
mov byte [ebp - 4], 2
call fcn.1006cac0
mov eax, dword [eax]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
mov dword [edi + 4], eax
cmp ecx, 0x10
jb 0x10055f9e
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10055f94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x10451fb0], 0
jne 0x1005600f
mov byte [0x10451fb0], 1
xor edi, edi
xor edx, edx
mov eax, edi
xor eax, dword [0x10451ff0]
xor edx, dword [0x10451ff4]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x10451fb1]
mov byte [edi + 0x10451fb1], cl
inc edi
cmp edi, 0x3d
jb 0x10055fb0
mov edi, dword [ebp - 0x48]
push ecx
push 0x10451fed
push 0x10451fb1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 4
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x44], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056058
sub ecx, dword [ebp - 0x44]
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, 0x1036ee48
push esp
call fcn.10019bd0
mov byte [ebp - 4], 4
call fcn.1006c680
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
mov dword [edi + 8], eax
cmp ecx, 0x10
jb 0x100560c4
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100560ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x104a6d20], 0
jne 0x10056135
mov byte [0x104a6d20], 1
xor edi, edi
xor edx, edx
mov eax, edi
xor eax, dword [0x104a6d50]
xor edx, dword [0x104a6d54]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a6d21]
mov byte [edi + 0x104a6d21], cl
inc edi
cmp edi, 0x2b
jb 0x100560d6
mov edi, dword [ebp - 0x48]
push ecx
push 0x104a6d4b
push 0x104a6d21
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 6
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x48], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056180
sub ecx, dword [ebp - 0x48]
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 7
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 6
call fcn.1006c680
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
mov dword [edi + 0xc], eax
cmp ecx, 0x10
jb 0x100561ec
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100561e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x104a9480], 0
jne 0x1005625c
mov byte [0x104a9480], 1
xor edi, edi
nop
xor edx, edx
mov eax, edi
xor eax, dword [0x104a94a8]
xor edx, dword [0x104a94ac]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a9481]
mov byte [edi + 0x104a9481], cl
inc edi
cmp edi, 0x22
jb 0x10056200
push ecx
push 0x104a94a2
push 0x104a9481
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 8
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100562a2
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 9
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 8
call fcn.1006daa0
mov ecx, dword [eax]
mov eax, dword [0x1060b5e0]
sub ecx, 0x24
mov dword [ebp - 4], 0xffffffff
mov dword [eax + 0x7ea0], ecx
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x1005631a
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10056310
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x1043a300], 0
jne 0x1005638c
mov byte [0x1043a300], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x1043a328]
xor edx, dword [0x1043a32c]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x1043a301]
mov byte [edi + 0x1043a301], cl
inc edi
cmp edi, 0x20
jb 0x10056330
push ecx
push 0x1043a320
push 0x1043a301
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0xa
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100563d2
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0xb
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0xa
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7ea4], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x10056446
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005643c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x104a6fa0], 0
jne 0x100564bc
mov byte [0x104a6fa0], 1
xor edi, edi
nop dword [eax + eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104a6fc0]
xor edx, dword [0x104a6fc4]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a6fa1]
mov byte [edi + 0x104a6fa1], cl
inc edi
cmp edi, 0x1d
jb 0x10056460
push ecx
push 0x104a6fbd
push 0x104a6fa1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0xc
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056502
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0xd
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0xc
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7ec0], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x10056576
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005656c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10056698
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x104a0260], 0
jne 0x100565ec
mov byte [0x104a0260], 1
xor edi, edi
nop dword [eax + eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104a0290]
xor edx, dword [0x104a0294]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a0261]
mov byte [edi + 0x104a0261], cl
inc edi
cmp edi, 0x2c
jb 0x10056590
push ecx
push 0x104a028c
push 0x104a0261
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0xe
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056632
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0xf
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0xe
call fcn.1006c680
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7ecc], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x10
jb 0x100566a8
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1005669e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1005669e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.102bb95a
add esp, 8
cmp byte [0x1049b160], 0
jne 0x1005671c
mov byte [0x1049b160], 1
xor edi, edi
nop word [eax + eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x1049b180]
xor edx, dword [0x1049b184]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x1049b161]
mov byte [edi + 0x1049b161], cl
inc edi
cmp edi, 0x1d
jb 0x100566c0
push ecx
push 0x1049b17d
push 0x1049b161
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x10
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056762
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x11
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x10
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7ed0], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x104a6de0], 0
jne 0x1005681c
mov byte [0x104a6de0], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104a6df8]
xor edx, dword [0x104a6dfc]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a6de1]
mov byte [edi + 0x104a6de1], cl
inc edi
cmp edi, 0x11
jb 0x100567c0
push ecx
push 0x104a6df1
push 0x104a6de1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x12
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056862
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x13
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x12
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7ed4], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x104a6ab0], 0
jne 0x1005691c
mov byte [0x104a6ab0], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104a6ac8]
xor edx, dword [0x104a6acc]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a6ab1]
mov byte [edi + 0x104a6ab1], cl
inc edi
cmp edi, 0x14
jb 0x100568c0
push ecx
push 0x104a6ac4
push 0x104a6ab1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x14
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056962
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x15
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x14
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7ed8], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x104a04b0], 0
jne 0x10056a1e
mov byte [0x104a04b0], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104a04f8]
xor edx, dword [0x104a04fc]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 0x48]
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor esi, eax
mov ecx, edx
mov eax, esi
shrd eax, ecx, 7
shr ecx, 7
xor esi, eax
xor edx, ecx
mov dword [ebp - 0x48], esi
mov ecx, esi
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [edi + 0x104a04b1]
xor cl, byte [ebp - 0x48]
mov byte [edi + 0x104a04b1], cl
inc edi
cmp edi, 0x45
jb 0x100569c0
push ecx
push 0x104a04f5
push 0x104a04b1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x16
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056a64
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x17
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x16
call fcn.1006c680
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7f18], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x1043a2d0], 0
jne 0x10056b1c
mov byte [0x1043a2d0], 1
xor edi, edi
nop
xor edx, edx
mov eax, edi
xor eax, dword [0x1043a2f0]
xor edx, dword [0x1043a2f4]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x1043a2d1]
mov byte [edi + 0x1043a2d1], cl
inc edi
cmp edi, 0x1c
jb 0x10056ac0
push ecx
push 0x1043a2ec
push 0x1043a2d1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x18
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056b62
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x19
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x18
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7f20], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x104931e0], 0
jne 0x10056c1c
mov byte [0x104931e0], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104931f8]
xor edx, dword [0x104931fc]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104931e1]
mov byte [edi + 0x104931e1], cl
inc edi
cmp edi, 0x15
jb 0x10056bc0
push ecx
push 0x104931f5
push 0x104931e1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x1a
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056c62
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x1b
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x1a
call fcn.1006c680
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7f6c], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x10493330], 0
jne 0x10056d1c
mov byte [0x10493330], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x10493358]
xor edx, dword [0x1049335c]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x10493331]
mov byte [edi + 0x10493331], cl
inc edi
cmp edi, 0x21
jb 0x10056cc0
push ecx
push 0x10493351
push 0x10493331
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x1c
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
xorps xmm0, xmm0
cmovae edx, dword [ebp - 0x28]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x4c], esp
mov ecx, edx
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10056d62
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.1001a920
sub esp, 0x18
mov byte [ebp - 4], 0x1d
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x1c
call fcn.1006dee0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x6efc], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x104932f0], 0
jne 0x10056e1e
mov byte [0x104932f0], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x10493320]
xor edx, dword [0x10493324]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 0x48]
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor esi, eax
mov ecx, edx
mov eax, esi
shrd eax, ecx, 7
shr ecx, 7
xor esi, eax
xor edx, ecx
mov dword [ebp - 0x48], esi
mov ecx, esi
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [edi + 0x104932f1]
xor cl, byte [ebp - 0x48]
mov byte [edi + 0x104932f1], cl
inc edi
cmp edi, 0x2a
jb 0x10056dc0
push ecx
push 0x1049331a
push 0x104932f1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x1e
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
cmovae eax, dword [ebp - 0x28]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.10019eb0
sub esp, 0x18
mov byte [ebp - 4], 0x1f
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x1e
call fcn.1006e100
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x6f0c], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
cmp byte [0x1043a380], 0
jne 0x10056efc
mov byte [0x1043a380], 1
xor edi, edi
nop dword [eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x1043a3a8]
xor edx, dword [0x1043a3ac]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x1043a381]
mov byte [edi + 0x1043a381], cl
inc edi
cmp edi, 0x21
jb 0x10056ea0
push ecx
push 0x1043a3a1
push 0x1043a381
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x20
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
cmovae eax, dword [ebp - 0x28]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.10019eb0
sub esp, 0x18
mov byte [ebp - 4], 0x21
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x20
call fcn.1006cce0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x6f10], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
sub esp, 0x18
mov ecx, 0x1037014c
mov eax, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.1006abf0
sub esp, 0x18
mov dword [ebp - 4], 0x22
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov dword [ebp - 4], 0xffffffff
call fcn.1006cac0
mov ecx, dword [0x1060b5e0]
sub esp, 0x18
mov dword [ebp - 0x4c], esp
mov dword [ecx + 0x6f20], eax
mov eax, esp
push eax
mov ecx, 0x1036ea54
call fcn.1002b750
sub esp, 0x18
mov dword [ebp - 4], 0x23
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov dword [ebp - 4], 0xffffffff
call fcn.1006cce0
mov ecx, dword [0x1060b5e0]
sub esp, 0x18
mov dword [ebp - 0x4c], esp
mov dword [ecx + 0x6f1c], eax
mov eax, esp
push eax
mov ecx, 0x10370100
call fcn.1006a560
sub esp, 0x18
mov dword [ebp - 4], 0x24
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov dword [ebp - 4], 0xffffffff
call fcn.1006cce0
mov ecx, dword [0x1060b5e0]
sub esp, 0x18
mov dword [ebp - 0x4c], esp
mov dword [ecx + 0x6f18], eax
mov eax, esp
push eax
mov ecx, 0x1036f3c0
call fcn.1006b130
sub esp, 0x18
mov dword [ebp - 4], 0x25
mov ecx, 0x1036ee48
push esp
call fcn.10019bd0
mov dword [ebp - 4], 0xffffffff
call fcn.1006c680
mov ecx, dword [0x1060b5e0]
mov dword [ecx + 0x7f28], eax
cmp byte [0x104a19a0], 0
jne 0x100570dc
mov byte [0x104a19a0], 1
xor edi, edi
nop word [eax + eax]
xor edx, edx
mov eax, edi
xor eax, dword [0x104a19c0]
xor edx, dword [0x104a19c4]
xor eax, 0x1de26cd5
xor edx, 0xd28f2c5
mov dword [ebp - 0x44], eax
mov ecx, edx
shld ecx, eax, 0xd
xor edx, ecx
shl eax, 0xd
xor dword [ebp - 0x44], eax
mov ecx, edx
mov eax, dword [ebp - 0x44]
shrd eax, ecx, 7
xor dword [ebp - 0x44], eax
shr ecx, 7
xor edx, ecx
mov ecx, dword [ebp - 0x44]
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [ebp - 0x44]
xor cl, byte [edi + 0x104a19a1]
mov byte [edi + 0x104a19a1], cl
inc edi
cmp edi, 0x1d
jb 0x10057080
push ecx
push 0x104a19bd
push 0x104a19a1
lea ecx, [ebp - 0x28]
call fcn.1001a620
mov dword [ebp - 4], 0x26
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0x10
cmovae eax, dword [ebp - 0x28]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.10019eb0
sub esp, 0x18
mov byte [ebp - 4], 0x27
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x26
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7f70], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
lea eax, [ebp - 0x28]
push eax
call fcn.100572c0
sub esp, 0x18
mov dword [ebp - 4], 0x28
mov ecx, eax
mov dword [ebp - 0x4c], esp
mov edx, esp
call fcn.10019da0
push eax
mov ecx, edx
call fcn.10019eb0
sub esp, 0x18
mov byte [ebp - 4], 0x29
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x28
call fcn.1006c680
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x7f90], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
lea eax, [ebp - 0x28]
push eax
call fcn.10057340
sub esp, 0x18
mov dword [ebp - 4], 0x2a
mov ecx, eax
mov dword [ebp - 0x4c], esp
mov edx, esp
call fcn.10019da0
push eax
mov ecx, edx
call fcn.10019eb0
sub esp, 0x18
mov byte [ebp - 4], 0x2b
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x2a
call fcn.1006dcc0
mov ecx, dword [0x1060b5e0]
mov dword [ebp - 4], 0xffffffff
mov dword [ecx + 0x6f04], eax
lea ecx, [ebp - 0x28]
call fcn.10019dd0
lea eax, [ebp - 0x40]
push eax
call fcn.100573c0
sub esp, 0x18
mov dword [ebp - 4], 0x2c
mov ecx, eax
mov dword [ebp - 0x4c], esp
mov edx, esp
call fcn.10019da0
push eax
mov ecx, edx
call fcn.10019eb0
sub esp, 0x18
mov byte [ebp - 4], 0x2d
mov ecx, 0x1036f278
push esp
call fcn.10019bd0
mov byte [ebp - 4], 0x2c
call fcn.1006c680
mov ecx, dword [0x1060b5e0]
mov dword [ecx + 0x7fa0], eax
lea ecx, [ebp - 0x40]
call fcn.10019dd0
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push str.CreateSimpleThread
push str.tier0.dll
call edi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push eax
call esi
mov ecx, dword [0x1060b5e0]
push str.ReleaseThreadHandle
push str.tier0.dll
mov dword [ecx + 0x7f98], eax
call edi
push eax
call esi
mov ecx, dword [0x1060b5e0]
mov dword [ecx + 0x7f9c], eax
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.102bb91c
mov esp, ebp
pop ebp
ret