Function at 0x101022fc
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x100
mov dword [esp + 0x14], edx
mov eax, dword [0x101b9014]
xor eax, ebp
mov dword [esp + 0xf8], eax
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx + 0x58]
call fcn.100fefba
mov edi, eax
xor esi, esi
push esi
call fcn.1015dbe0
add esp, 4
mov dword [esp + 8], eax
mov dword [esp + 4], edx
xor ebx, ebx
dec ebx
lea eax, [esp + 0xc0]
mov dword [eax + 0x2c], ebx
mov dword [eax], 0x43506473
mov dword [eax + 4], 1
mov dword [eax + 0x28], esi
pxor xmm0, xmm0
movdqu xmmword [eax + 8], xmm0
movdqu xmmword [eax + 0x18], xmm0
mov dword [esp + 0xc], edi
mov ecx, edi
push eax
call fcn.1011c1c4
mov ecx, ebx
test al, al
je 0x10102389
mov ebx, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
mov eax, dword [esp + 4]
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 8]
mov dword [esp + 0xc0], eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x70], ebx
lea eax, [esp + 0xc0]
push eax
call fcn.1015a38c
add esp, 4
test eax, eax
je 0x10102400
mov edi, dword [eax + 0x14]
mov esi, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
lea eax, [esp + 0x70]
push eax
call fcn.1015a38c
add esp, 4
test eax, eax
je 0x10102400
imul ecx, edi, 0x2710
imul edx, ebx, 0x64
add edx, ecx
add edx, esi
imul ecx, dword [eax + 0x14], 0x2710
imul esi, dword [eax + 0x10], 0x64
add esi, ecx
add esi, dword [eax + 0xc]
cmp edx, esi
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
jne 0x10102408
jmp 0x1010241c
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
lea eax, [edi + 0x5c]
mov dword [edi + 0x5c], 0
mov ecx, dword [esp + 0xc]
push eax
call fcn.1011c37a
cmp dword [edi + 0x5c], 0xb
jb 0x1010243a
mov ecx, dword [edi + 0x58]
push esi
call fcn.10100be0
add esi, 0x10
mov ecx, esi
call fcn.101033d8
jmp 0x101032e1
movzx eax, byte [edi + 0x2b]
test al, al
jns 0x10102445
mov eax, dword [edi + 0x24]
test eax, eax
je 0x10102503
cmp byte [esi + 0x44], 0
je 0x1010249e
lea eax, [esp + 0x34]
mov dword [eax], 0
mov ecx, dword [edi + 0x58]
push 1
push eax
push esi
call fcn.10100940
cmp eax, 5
ja 0x10102513
mov ecx, 0x32
bt ecx, eax
jb 0x101032c9
mov ecx, 0xc
bt ecx, eax
jae 0x10102513
mov ecx, dword [edi + 0x58]
push 3
push esi
call fcn.10100e90
jmp 0x101032c9
mov dword [esp + 0xec], 0xffffffff
mov dword [esp + 0xc0], 0x43506473
mov dword [esp + 0xc4], 1
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc8], xmm0
movdqu xmmword [esp + 0xd8], xmm0
mov dword [esp + 0xe8], 0
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0xc0]
push eax
call fcn.1011c1c4
test al, al
je 0x10102503
test byte [esp + 0xc8], 1
jne 0x10102453
mov ecx, dword [edi + 0x58]
push 0
push esi
call fcn.10100e90
jmp 0x101032e1
xor ebx, ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], ebx
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x68]
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax - 4], eax
mov dword [esp + 0xc], ecx
mov ecx, dword [ecx + 0x58]
mov eax, dword [ecx + 4]
mov eax, dword [eax + 4]
mov dword [esp + 0x18], ecx
lea esi, [ecx + eax + 4]
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
push ebx
push ebx
call edi
test edx, edx
js 0x101025bf
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0x18]
lea edi, [esp + 0x70]
mov dword [esp + 0x1c], ecx
push edi
call fcn.100622a0
lea esi, [esp + 0xc0]
mov ecx, esi
mov edx, edi
call fcn.101034f3
lea edi, [esp + 0x64]
mov ecx, edi
push dword [edi + 4]
call fcn.1003b530
mov ecx, dword [esi]
mov eax, dword [esi + 4]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov ecx, dword [esi + 8]
mov dword [edi + 8], ecx
test ecx, ecx
je 0x101025f3
lea ecx, [esp + 0xc4]
lea edi, [esp + 0x68]
mov dword [eax + 8], edi
mov dword [ecx - 4], ecx
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 4], eax
jmp 0x101025fb
lea ecx, [esp + 0x64]
push dword [ecx + 4]
call fcn.1003b530
xor eax, eax
dec eax
lea ecx, [esp + 0xc0]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov eax, dword [esp + 0xc]
add eax, 0x18
push eax
call fcn.1005b2a0
mov edi, dword [esp + 0x10]
jmp 0x10103248
lea edi, [esp + 0x68]
mov dword [esp + 0x64], edi
lea ecx, [esp + 0xc0]
push eax
call fcn.1003b530
cmp byte [esp + 0x7b], 0
jns 0x1010261b
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
xor eax, eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x60], eax
xor eax, eax
dec eax
lea esi, [esp + 0xc0]
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
mov ecx, esi
call fcn.1011f54c
lea edi, [esp + 0x70]
mov ecx, edi
push str.login
call fcn.10035a6a
lea ebx, [esp + 0xa8]
mov ecx, ebx
push str.action_type
call fcn.10035a6a
mov ecx, esi
push edi
push ebx
call fcn.1011f5ee
cmp byte [ebx + 0xb], 0
jns 0x1010268e
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
lea ebx, [esp + 0x68]
jns 0x101026a5
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
lea esi, [esp + 0x9c]
mov dword [esi], 0xffffffff
lea edi, [esp + 0x70]
mov ecx, edi
push 0x101ad26a
call fcn.10035a6a
lea ecx, [esp + 0x64]
push edi
push esi
call fcn.10103c9c
cmp byte [esp + 0x7b], 0
jns 0x101026e0
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
mov esi, dword [esp + 0x9c]
cmp esi, ebx
je 0x1010271f
add esi, 0x1c
lea edi, [esp + 0x70]
mov ecx, edi
push 0x101ad26a
call fcn.10035a6a
lea ecx, [esp + 0xc0]
push esi
push edi
call fcn.1011f5ee
cmp byte [esp + 0x7b], 0
jns 0x1010271f
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
lea esi, [esp + 0x90]
mov dword [esi], 0xffffffff
lea edi, [esp + 0x70]
mov ecx, edi
push 0x101ad276
call fcn.10035a6a
lea ecx, [esp + 0x64]
push edi
push esi
call fcn.10103c9c
cmp byte [esp + 0x7b], 0
jns 0x1010275a
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
mov esi, dword [esp + 0x90]
cmp esi, ebx
je 0x10102799
add esi, 0x1c
lea edi, [esp + 0x70]
mov ecx, edi
push 0x101ad276
call fcn.10035a6a
lea ecx, [esp + 0xc0]
push esi
push edi
call fcn.1011f5ee
cmp byte [esp + 0x7b], 0
jns 0x10102799
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
lea edi, [esp + 0x48]
xor esi, esi
dec esi
mov dword [edi], esi
push edi
call fcn.101204f8
add esp, 4
mov ebx, dword [edi]
mov eax, dword [esp + 0x10]
add eax, 0x20
lea ecx, [ebx + 8]
mov dword [esp + 0x20], eax
push eax
call fcn.1003660c
lea edi, [esp + 0x7c]
mov dword [edi + 8], esi
mov dword [edi + 4], esi
pcmpeqd xmm0, xmm0
movdqa xmmword [edi - 0xc], xmm0
lea ecx, [esp + 0xc0]
lea esi, [esp + 0x70]
push esi
call fcn.101202b8
mov ecx, ebx
push edi
push esi
call fcn.10121a26
lea edi, [esp + 0x3c]
lea ecx, [esp + 0xc0]
push edi
call fcn.1011fa52
mov eax, dword [edi]
mov esi, dword [ebx + 0x38]
mov dword [ebx + 0x38], eax
test esi, esi
je 0x1010281d
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
xor eax, eax
mov dword [ebx + 0x40], eax
mov dword [ebx + 0x44], 0x404e0000
mov dword [esp + 0xa8], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xac], eax
mov eax, dword [ebx]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [section..00cfg]
lea eax, [esp + 0x58]
mov ecx, ebx
mov dword [esp + 4], eax
push eax
lea eax, [esp + 0xac]
push eax
call esi
mov byte [esp + 8], al
cmp byte [esp + 0xb3], 0
jns 0x1010287d
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x87], 0
jns 0x10102893
push dword [esp + 0x7c]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
jns 0x101028a6
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
test ebx, ebx
je 0x101028ba
mov ecx, ebx
call fcn.101219b4
push ebx
call fcn.10145bd4
add esp, 4
lea ecx, [esp + 0xc0]
call fcn.1011f5be
mov esi, 2
cmp byte [esp + 8], 0
mov edi, dword [esp + 0x10]
je 0x101031b6
lea esi, [esp + 0xc0]
xor eax, eax
dec eax
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
mov ecx, esi
call fcn.1011f54c
lea ebx, [esp + 0x70]
mov ecx, ebx
push str.logout
call fcn.10035a6a
lea edi, [esp + 0xa8]
mov ecx, edi
push str.action_type
call fcn.10035a6a
mov ecx, esi
push ebx
push edi
call fcn.1011f5ee
cmp byte [esp + 0xb3], 0
jns 0x10102943
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
jns 0x10102956
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
movzx ebx, byte [esp + 0x63]
test bl, bl
jns 0x1010296b
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0x5c]
cmp ebx, 5
jl 0x101029ae
mov eax, dword [esp + 4]
lea esi, [eax + ebx]
mov edi, 0x74636964
mov ecx, ebx
add ecx, 0xfffffffc
push ecx
push 0x64
push eax
call fcn.10147ef0
add esp, 0xc
test eax, eax
je 0x101029ae
mov ecx, dword [eax]
xor ecx, edi
movzx edx, byte [eax + 4]
xor edx, 0x3d
or edx, ecx
je 0x10102f4c
inc eax
mov ecx, esi
sub ecx, eax
cmp ecx, 5
jge 0x1010297e
mov esi, dword [esp + 0x64]
lea edi, [esp + 0x68]
cmp esi, edi
je 0x101029f8
lea ebx, [esp + 0xc0]
lea eax, [esi + 0x10]
lea edx, [esi + 0x1c]
mov ecx, ebx
push edx
push eax
call fcn.1011f5ee
test esi, esi
je 0x10103392
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x101029e9
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x101029df
jmp 0x101029f2
mov eax, dword [esi + 8]
cmp dword [eax], esi
mov esi, eax
jne 0x101029e9
mov esi, eax
cmp eax, edi
jne 0x101029c1
xor eax, eax
dec eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x23], 0
js 0x10102a28
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 8]
mov dword [esp + 0x50], eax
movq xmm0, qword [ecx]
movq qword [esp + 0x48], xmm0
jmp 0x10102a37
lea ecx, [esp + 0x48]
push dword [eax + 0x1c]
push dword [eax + 0x18]
call fcn.10056cf6
lea edx, [esp + 0x48]
lea ecx, [esp + 0x40]
xor eax, eax
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx - 4], ecx
movzx eax, byte [esp + 0x53]
test al, al
jns 0x10102a5a
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x70]
push eax
push edx
call fcn.10060680
lea esi, [esp + 0xa8]
mov ecx, esi
push 0x101ad230
call fcn.10035a6a
mov dword [esp + 0x90], esi
lea ecx, [esp + 0x3c]
lea ebx, [esp + 0x9c]
mov edx, ebx
lea eax, [esp + 0x90]
push eax
push esi
call fcn.10103b86
add esp, 8
mov eax, dword [ebx]
lea esi, [eax + 0x1c]
cmp byte [eax + 0x27], 0
jns 0x10102ab2
push dword [esi]
call fcn.10145bd4
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esi + 8], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esi], xmm0
mov byte [esp + 0x7b], 0
mov word [esp + 0x70], 0
cmp byte [esp + 0xb3], 0
jns 0x10102afb
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
jns 0x10102afb
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
lea edx, [esp + 0x48]
mov ecx, ebx
call fcn.10103470
movzx eax, byte [esp + 0xa7]
test al, al
jns 0x10102b20
mov ebx, dword [esp + 0x9c]
mov eax, dword [esp + 0xa0]
lea esi, [esp + 0xa8]
mov ecx, esi
push eax
push ebx
call fcn.10060680
mov ecx, esi
push 3
push 0x101ad256
lea eax, [esp + 0x78]
push eax
call fcn.10062a60
lea esi, [esp + 0x90]
mov ecx, esi
push str.upload_file_log
call fcn.10035a6a
lea eax, [esp + 0xb4]
mov dword [eax], esi
lea ecx, [esp + 0x3c]
lea edi, [esp + 0xb8]
mov edx, edi
push eax
push esi
call fcn.10103b86
add esp, 8
mov eax, dword [edi]
lea esi, [eax + 0x1c]
cmp byte [eax + 0x27], 0
jns 0x10102b8b
push dword [esi]
call fcn.10145bd4
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esi + 8], eax
movq xmm0, qword [esp + 0x70]
movq qword [esi], xmm0
mov byte [esp + 0x7b], 0
mov word [esp + 0x70], 0
cmp byte [esp + 0x9b], 0
jns 0x10102bd4
push dword [esp + 0x90]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
jns 0x10102bd4
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0xb3], 0
jns 0x10102bed
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0xa7], 0
jns 0x10102c06
push dword [esp + 0x9c]
call fcn.10145bd4
add esp, 4
push 0x30
call fcn.10145ba4
add esp, 4
mov dword [esp + 4], eax
mov ecx, eax
push 1
call fcn.10121b14
lea esi, [esp + 0x9c]
lea edx, [esp + 0x48]
mov ecx, esi
call fcn.10103470
movzx eax, byte [esi + 0xb]
test al, al
jns 0x10102c45
mov esi, dword [esp + 0x9c]
mov eax, dword [esp + 0xa0]
lea edi, [esp + 0xa8]
mov ecx, edi
push eax
push esi
call fcn.10060680
mov ecx, edi
push 3
push 0x101ad256
lea esi, [esp + 0x78]
push esi
call fcn.10062a60
mov ecx, dword [esp + 4]
push esi
call fcn.10121b9c
mov ebx, eax
cmp byte [esp + 0x7b], 0
jns 0x10102c87
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0xb3], 0
mov ecx, dword [esp + 4]
jns 0x10102ca8
push dword [esp + 0xa8]
call fcn.10145bd4
mov ecx, dword [esp + 8]
add esp, 4
cmp byte [esp + 0xa7], 0
jns 0x10102cc5
push dword [esp + 0x9c]
call fcn.10145bd4
mov ecx, dword [esp + 8]
add esp, 4
mov esi, 2
test bl, bl
je 0x1010317f
mov edi, dword [esp + 0x3c]
lea eax, [esp + 0x40]
cmp edi, eax
je 0x10102dfa
lea ebx, [edi + 0x10]
lea ecx, [esp + 0x70]
push str.application_octet_stream
call fcn.10035a6a
movzx ecx, byte [edi + 0x1b]
mov eax, ebx
test cl, cl
jns 0x10102d03
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0x14]
test ecx, ecx
mov edx, dword [esp + 4]
je 0x10102d13
test eax, eax
je 0x10103395
mov esi, edx
cmp ecx, 0x14
jne 0x10102d47
movdqu xmm0, xmmword [eax]
pcmpeqb xmm0, xmmword [str.upload_file_miniupload_file_minidump]
movd xmm1, dword [eax + 0x10]
pcmpeqb xmm1, xmmword [str.dump]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
mov esi, edx
cmove esi, dword [esp + 0x18]
movzx eax, byte [edi + 0x27]
test al, al
mov dword [esp + 8], ebx
jns 0x10102d5b
mov ecx, dword [edi + 0x1c]
mov eax, dword [edi + 0x20]
jmp 0x10102d5e
lea ecx, [edi + 0x1c]
xor edx, edx
mov dword [esp + 0xac], edx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xb0], edx
lea ebx, [esp + 0xa8]
push ebx
push eax
push ecx
call fcn.10078390
add esp, 0xc
lea ecx, [esp + 0xc0]
lea eax, [esp + 0x70]
push eax
push esi
push ebx
push dword [esp + 0x14]
call fcn.1011f792
cmp byte [esp + 0xb3], 0
jns 0x10102db7
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
jns 0x10102dca
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
test edi, edi
je 0x10103398
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x10102de3
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x10102dd9
jmp 0x10102dec
mov eax, dword [edi + 8]
cmp dword [eax], edi
mov edi, eax
jne 0x10102de3
mov edi, eax
lea ecx, [esp + 0x40]
cmp eax, ecx
jne 0x10102ce2
mov dword [esp + 0xb8], 0xffffffff
lea eax, [esp + 0xb8]
push eax
call fcn.101204f8
add esp, 4
mov eax, dword [esp + 0xb8]
test eax, eax
je 0x10102f44
mov dword [esp + 8], eax
lea esi, [esp + 0x74]
xor eax, eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi - 4], esi
lea ecx, [esp + 0xc0]
lea eax, [esp + 0x70]
push eax
call fcn.10120368
mov edi, dword [esi - 4]
cmp edi, esi
mov ebx, dword [esp + 0x10]
je 0x10102e8b
lea eax, [edi + 0x10]
lea edx, [edi + 0x1c]
mov ecx, dword [esp + 8]
push edx
push eax
call fcn.10121a26
test edi, edi
je 0x1010339b
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x10102e7c
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x10102e72
jmp 0x10102e85
mov eax, dword [edi + 8]
cmp dword [eax], edi
mov edi, eax
jne 0x10102e7c
mov edi, eax
cmp eax, esi
jne 0x10102e52
lea esi, [esp + 0xa8]
mov ecx, esi
push str.Cookie
call fcn.10035a6a
lea eax, [esp + 0x58]
mov edi, dword [esp + 8]
mov ecx, edi
push eax
push esi
call fcn.10121a26
cmp byte [esp + 0xb3], 0
jns 0x10102ec8
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
lea esi, [esp + 0x38]
lea ecx, [esp + 0xc0]
push esi
call fcn.1011fa52
mov eax, dword [esi]
mov esi, dword [edi + 0x38]
mov dword [edi + 0x38], eax
test esi, esi
je 0x10102efb
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
mov edi, dword [esp + 8]
mov dword [edi + 0x44], 0x404e0000
mov dword [edi + 0x40], 0
xor eax, eax
dec eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
cmp byte [ebx + 0x2b], 0
js 0x10102f99
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 8]
mov dword [esp + 0xb0], eax
movq xmm0, qword [ecx]
movq qword [esp + 0xa8], xmm0
jmp 0x10102fab
xor esi, esi
inc esi
jmp 0x1010317b
mov ecx, esi
sub ecx, eax
je 0x101029ae
mov edi, eax
sub edi, dword [esp + 4]
cmp edi, 0xffffffff
je 0x101029ae
cmp ebx, edi
jb 0x101029ae
test ecx, ecx
jle 0x101029ae
push ecx
push 0x3b
push eax
call fcn.10147ef0
add esp, 0xc
test eax, eax
je 0x101029ae
cmp byte [eax], 0x3b
je 0x101032f7
inc eax
mov ecx, esi
sub ecx, eax
jmp 0x10102f6d
lea ecx, [esp + 0xa8]
push dword [ebx + 0x24]
push dword [ebx + 0x20]
call fcn.10055fcc
lea edi, [esp + 0x68]
cmp byte [ebx + 8], 0
je 0x10103117
mov esi, 0xffffffe8
lea ebx, [esp + 0x9c]
mov dword [esp + 0xb4], 0xffffffff
mov ecx, ebx
push dword [esi + str.product]
call fcn.10035a6a
lea ecx, [esp + 0x64]
push ebx
lea eax, [esp + 0xb8]
push eax
call fcn.10103c9c
cmp byte [esp + 0xa7], 0
jns 0x10103008
push dword [esp + 0x9c]
call fcn.10145bd4
add esp, 4
mov eax, dword [esp + 0xb4]
cmp eax, edi
je 0x1010310e
add eax, 0x1c
push eax
lea edi, [esp + 0x94]
push edi
call fcn.10121c54
add esp, 8
cmp byte [esp + 0x9b], 0
jns 0x1010303c
mov edi, dword [esp + 0x90]
mov edx, dword [esi + 0x101ad2c4]
movzx ecx, byte [esp + 0xb3]
mov eax, ecx
test cl, cl
jns 0x10103057
mov eax, dword [esp + 0xac]
test eax, eax
je 0x10103091
mov dword [esp + 0x18], edx
lea ebx, [esp + 0xa8]
test cl, cl
jns 0x10103071
mov ebx, dword [esp + 0xa8]
push eax
push 0x3f
push ebx
call fcn.10147ef0
add esp, 0xc
test eax, eax
mov edx, dword [esp + 0x18]
je 0x10103091
sub eax, ebx
mov ecx, 0x26
cmp eax, 0xffffffff
jne 0x10103096
mov ecx, 0x3f
push edi
push edx
push ecx
push str._c_s_s
lea ebx, [esp + 0xac]
push ebx
call fcn.100772f0
add esp, 0x14
movzx eax, byte [esp + 0xa7]
mov edx, ebx
test al, al
jns 0x101030ca
mov eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x9c]
lea ecx, [esp + 0xa8]
push eax
push edx
call fcn.1005639a
cmp byte [esp + 0xa7], 0
lea edi, [esp + 0x68]
jns 0x101030f5
push dword [esp + 0x9c]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x9b], 0
jns 0x1010310e
push dword [esp + 0x90]
call fcn.10145bd4
add esp, 4
add esi, 8
jne 0x10102fc5
mov ebx, dword [esp + 8]
lea ecx, [ebx + 8]
lea edi, [esp + 0xa8]
push edi
call fcn.1003660c
mov eax, dword [ebx]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [section..00cfg]
lea eax, [esp + 0x28]
mov ecx, ebx
push 0
push eax
call esi
xor al, 1
movzx esi, al
cmp byte [edi + 0xb], 0
jns 0x1010315d
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
add esi, esi
lea ecx, [esp + 0x70]
push dword [ecx + 4]
call fcn.1003b530
mov ecx, ebx
call fcn.101219b4
push ebx
call fcn.10145bd4
add esp, 4
mov ecx, dword [esp + 4]
test ecx, ecx
mov edi, dword [esp + 0x10]
je 0x1010318e
push 1
call fcn.10121c10
mov ecx, dword [esp + 0x40]
call fcn.10103d2c
cmp byte [esp + 0x53], 0
jns 0x101031aa
push dword [esp + 0x48]
call fcn.10145bd4
add esp, 4
lea ecx, [esp + 0xc0]
call fcn.1011f5be
cmp byte [esp + 0x63], 0
jns 0x101031c9
push dword [esp + 0x58]
call fcn.10145bd4
add esp, 4
lea ecx, [esp + 0x64]
push dword [ecx + 4]
call fcn.1003b530
lea ecx, [esp + 0xc0]
xor eax, eax
dec eax
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
push dword [esp + 0x1c]
call fcn.1005b2a0
cmp esi, 2
je 0x1010326f
cmp esi, 1
je 0x10103248
test esi, esi
jne 0x1010329d
lea esi, [edi + 0x5c]
mov ecx, dword [edi + 0x58]
mov dword [esp + 0x34], 0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
lea edx, [esp + 0x28]
push edx
push eax
call fcn.1011d044
mov ecx, dword [edi + 0x58]
call fcn.100fefba
inc dword [edi + 0x5c]
mov ecx, eax
push esi
call fcn.1011c37a
lea ecx, [esp + 0xc0]
call fcn.101033d8
jmp 0x1010329d
mov dword [esp + 0x34], 0
mov esi, dword [esp + 0xc]
test esi, esi
je 0x10103268
mov ecx, esi
call fcn.1011cf6c
push esi
call fcn.10145bd4
add esp, 4
mov ecx, dword [edi + 0x58]
push 5
jmp 0x10103294
mov dword [esp + 0x34], 0
mov esi, dword [esp + 0xc]
test esi, esi
je 0x1010328f
mov ecx, esi
call fcn.1011cf6c
push esi
call fcn.10145bd4
add esp, 4
mov ecx, dword [edi + 0x58]
push 4
push dword [esp + 0x18]
call fcn.10100e90
cmp byte [esp + 0xcb], 0
jns 0x101032b6
push dword [esp + 0xc0]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x33], 0
jns 0x101032c9
push dword [esp + 0x28]
call fcn.10145bd4
add esp, 4
mov esi, dword [esp + 0x34]
test esi, esi
je 0x101032e1
mov ecx, esi
call fcn.1011cf6c
push esi
call fcn.10145bd4
add esp, 4
mov ecx, dword [esp + 0xf8]
xor ecx, ebp
call fcn.101465a3
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp eax, esi
je 0x101029ae
sub eax, dword [esp + 4]
cmp eax, 0xffffffff
je 0x101029ae
xor ecx, ecx
dec ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
sub eax, edi
add eax, 0xfffffffb
add edi, 5
lea edx, [esp + 0x64]
lea esi, [esp + 0x58]
mov ebx, edi
lea edi, [esp + 0x70]
mov ecx, edi
push edx
push eax
push ebx
push esi
call fcn.1005649e
lea esi, [esp + 0xa8]
mov ecx, esi
push 0x1019dad3
call fcn.10035a6a
lea ecx, [esp + 0xc0]
push edi
push esi
call fcn.1011f5ee
cmp byte [esp + 0xb3], 0
jns 0x10103376
push dword [esp + 0xa8]
call fcn.10145bd4
add esp, 4
cmp byte [esp + 0x7b], 0
jns 0x101029ae
push dword [esp + 0x70]
call fcn.10145bd4
add esp, 4
jmp 0x101029ae
int3
int3
int3
int3