Function at 0x2e00a66b
Capabilities:
Check http status code
Get session user name
Impersonate user
Initialize winhttp library
Prepare http request
Read file on windows
Read http header
Receive http response
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x3c4c
call fcn.2e014628
mov eax, dword [0x2e022064]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
or dword [ebp - 0x3b8c], 0xffffffff
mov dword [ebp - 0x3b90], eax
mov eax, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0x3b78], eax
mov eax, dword [ebp + 0x1c]
push esi
push edi
mov dword [ebp - 0x3b68], eax
mov eax, dword [ebp + 0x24]
xor ebx, ebx
push 8
mov dword [ebp - 0x3b9c], eax
pop ecx
xor eax, eax
lea edi, [ebp - 0x3c10]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x3b64], ebx
mov dword [ebp - 0x3bd0], ebx
mov dword [ebp - 0x3bc4], ebx
mov dword [ebp - 0x3b70], ebx
mov dword [ebp - 0x3b6c], ebx
mov dword [ebp - 0x3b5c], ebx
mov dword [ebp - 0x3b74], ebx
mov dword [ebp - 0x3b94], ebx
mov dword [ebp - 0x3bd8], 0x100
mov dword [ebp - 0x3c10], 0x20
mov dword [ebp - 0x3c0c], 1
call fcn.2e007d0a
mov eax, dword [0x2e022f08]
mov ecx, dword [eax]
lea edx, [ebp - 0x3b64]
push edx
push 0x2e001c7c
push eax
call dword [ecx + 0x20]
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
mov esi, 0x25f8
push esi
lea eax, [ebp - 0x3b54]
push ebx
push eax
call fcn.2e01440c
mov edi, dword [ebp - 0x3b9c]
mov eax, dword [ebp - 0x3b78]
mov ecx, dword [eax]
add esp, 0xc
lea edx, [ebp - 0x3b54]
push edx
push edi
push ebx
push eax
mov dword [ebp - 0x3b54], esi
mov dword [ebp - 0x3b50], 0x4000000
call dword [ecx + 0x1c]
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
mov eax, dword [ebp - 0x3b78]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
test eax, eax
je 0x2e00a798
mov esi, 0x80004004
jmp 0x2e00b2f8
push dword [ebp - 0x3b90]
mov eax, dword [edi]
push edi
call dword [eax + 8]
mov edi, eax
lea eax, [ebp - 0x3bd8]
push eax
lea eax, [ebp - 0x104]
push eax
mov dword [ebp - 0x3ba8], edi
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
lea eax, [ebp - 0x104]
mov dword [ebp - 0x3c08], eax
lea eax, [ebp - 0x3c10]
push eax
push dword [ebp - 0x3b90]
call dword [sym.imp.USERENV.dll_LoadUserProfileA]
test eax, eax
je 0x2e00a7ed
mov dword [ebp - 0x3bc4], 1
push dword [ebp - 0x3b90]
push ebx
call dword [sym.imp.ADVAPI32.dll_SetThreadToken]
test eax, eax
jne 0x2e00a81e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00a818
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
mov dword [ebp - 0x3bd0], 1
cmp edi, 2
je 0x2e00aefd
cmp edi, 3
je 0x2e00aefd
cmp edi, 4
jne 0x2e00aef3
push 0x38
lea eax, [ebp - 0x3c48]
push ebx
push eax
mov dword [ebp - 0x3b88], 0x824
mov byte [ebp - 0x3b5d], bl
call fcn.2e01440c
lea eax, [ebp - 0x514]
mov dword [ebp - 0x3c3c], eax
mov eax, 0x104
add esp, 0xc
mov dword [ebp - 0x3c38], eax
mov dword [ebp - 0x3c1c], eax
lea eax, [ebp - 0x3c4c]
push eax
mov edi, 0x80000000
push edi
push ebx
lea eax, [ebp - 0x25a4]
lea ecx, [ebp - 0x30c]
push eax
mov dword [ebp - 0x3c4c], 0x3c
mov dword [ebp - 0x3c20], ecx
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
jne 0x2e00a8d7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00a8d1
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
lea eax, [ebp - 0x3b88]
push eax
lea eax, [ebp - 0x155c]
push eax
push edi
lea eax, [ebp - 0x3c4c]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCreateUrl]
test eax, eax
jne 0x2e00a917
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00a911
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
push ebx
push ebx
push ebx
push ebx
push 0x2e001a9c
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov dword [ebp - 0x3b70], eax
cmp eax, ebx
jne 0x2e00a950
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00a94a
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
mov dword [ebp - 0x3bb0], ebx
mov dword [ebp - 0x3b9c], ebx
mov dword [ebp - 0x3bd4], 4
mov dword [ebp - 0x3bac], ebx
cmp dword [ebp - 0x3b5c], ebx
je 0x2e00a980
push dword [ebp - 0x3b5c]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
cmp dword [ebp - 0x3b6c], ebx
je 0x2e00a994
push dword [ebp - 0x3b6c]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
push ebx
push ebx
lea eax, [ebp - 0x514]
push eax
push dword [ebp - 0x3b70]
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov dword [ebp - 0x3b6c], eax
cmp eax, ebx
jne 0x2e00a9d3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00a9cd
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x30c]
push eax
push 0x2e001d08
push dword [ebp - 0x3b6c]
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov dword [ebp - 0x3b5c], eax
cmp eax, ebx
jne 0x2e00aa19
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00aa13
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
mov dword [ebp - 0x3b98], ebx
xor eax, eax
mov dword [ebp - 0x3b84], ebx
lea edi, [ebp - 0x3b80]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x3bc0]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
inc eax
mov dword [ebp - 0x3bf0], eax
mov dword [ebp - 0x3bdc], eax
mov eax, dword [ebp - 0x3b98]
sub eax, ebx
mov dword [ebp - 0x3bec], 3
mov dword [ebp - 0x3be8], ebx
mov dword [ebp - 0x3be4], ebx
mov dword [ebp - 0x3be0], ebx
mov dword [ebp - 0x3b58], ebx
je 0x2e00ab1e
dec eax
je 0x2e00aa96
dec eax
jne 0x2e00ab9a
inc eax
mov dword [ebp - 0x3b84], eax
mov dword [ebp - 0x3b58], eax
jmp 0x2e00ab83
lea eax, [ebp - 0x3bc0]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpGetIEProxyConfigForCurrentUser]
test eax, eax
je 0x2e00ab9a
cmp dword [ebp - 0x3bb8], ebx
je 0x2e00ab9a
mov edi, dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push 0x208
push ebx
call edi
push 0x208
push ebx
mov dword [ebp - 0x3b80], eax
call edi
mov dword [ebp - 0x3b7c], eax
cmp dword [ebp - 0x3b80], ebx
je 0x2e00ab9a
cmp eax, ebx
je 0x2e00ab9a
push 0xffffffffffffffff
push dword [ebp - 0x3bb8]
mov dword [ebp - 0x3b84], 3
push 0x104
push dword [ebp - 0x3b80]
call fcn.2e014486
add esp, 0x10
mov dword [ebp - 0x3b58], 1
jmp 0x2e00ab83
lea eax, [ebp - 0x3bc0]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpGetIEProxyConfigForCurrentUser]
test eax, eax
je 0x2e00ab9a
cmp dword [ebp - 0x3bc0], ebx
je 0x2e00ab9a
mov eax, dword [ebp - 0x3bbc]
cmp eax, ebx
je 0x2e00ab4e
or dword [ebp - 0x3bf0], 2
mov dword [ebp - 0x3be8], eax
lea eax, [ebp - 0x3b84]
push eax
lea eax, [ebp - 0x3bf0]
push eax
lea eax, [ebp - 0x155c]
push eax
push dword [ebp - 0x3b70]
mov dword [ebp - 0x3bdc], 1
call dword [sym.imp.WINHTTP.dll_WinHttpGetProxyForUrl]
mov dword [ebp - 0x3b58], eax
cmp eax, ebx
je 0x2e00ab9a
push 0xc
lea eax, [ebp - 0x3b84]
push eax
push 0x26
push dword [ebp - 0x3b70]
call dword [sym.imp.WINHTTP.dll_WinHttpSetOption]
mov edi, dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [ebp - 0x3bbc], ebx
je 0x2e00abb6
push dword [ebp - 0x3bbc]
call edi
mov dword [ebp - 0x3bbc], ebx
cmp dword [ebp - 0x3bb8], ebx
je 0x2e00abcc
push dword [ebp - 0x3bb8]
call edi
mov dword [ebp - 0x3bb8], ebx
cmp dword [ebp - 0x3bb4], ebx
je 0x2e00abe2
push dword [ebp - 0x3bb4]
call edi
mov dword [ebp - 0x3bb4], ebx
cmp dword [ebp - 0x3b80], ebx
je 0x2e00abf8
push dword [ebp - 0x3b80]
call edi
mov dword [ebp - 0x3b80], ebx
cmp dword [ebp - 0x3b7c], ebx
je 0x2e00ac0e
push dword [ebp - 0x3b7c]
call edi
mov dword [ebp - 0x3b7c], ebx
cmp dword [ebp - 0x3b58], ebx
je 0x2e00ac2c
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x3b5c]
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
jne 0x2e00ac41
inc dword [ebp - 0x3b98]
cmp dword [ebp - 0x3b98], 3
jl 0x2e00aa1f
jmp 0x2e00ac48
mov byte [ebp - 0x3b5d], 1
cmp byte [ebp - 0x3b5d], bl
jne 0x2e00ac58
cmp esi, ebx
jl 0x2e00b2f8
push ebx
push dword [ebp - 0x3b5c]
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
jne 0x2e00ac71
cmp esi, ebx
jl 0x2e00b2f8
lea eax, [ebp - 0x3bac]
push eax
lea eax, [ebp - 0x3bd4]
push eax
lea eax, [ebp - 0x3b9c]
push eax
push ebx
push 0x20000013
push dword [ebp - 0x3b5c]
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
jne 0x2e00acbc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00acb6
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
mov ecx, dword [ebp - 0x3b9c]
mov eax, 0x194
cmp ecx, eax
ja 0x2e00ade3
je 0x2e00ae34
cmp ecx, 0xc8
je 0x2e00addb
cmp ecx, 0x12c
jbe 0x2e00ae3e
cmp ecx, 0x12f
ja 0x2e00ae1a
lea eax, [ebp - 0x3bac]
push eax
lea eax, [ebp - 0x3b88]
push eax
lea eax, [ebp - 0x155c]
push eax
push ebx
push 0x33
push dword [ebp - 0x3b5c]
mov dword [ebp - 0x3b88], 0x824
mov dword [ebp - 0x3bac], ebx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
jne 0x2e00ad51
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00ad4b
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
lea eax, [ebp - 0x3c4c]
push eax
push ebx
push ebx
lea eax, [ebp - 0x155c]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
test eax, eax
jne 0x2e00ad8b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00ad85
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
lea eax, [ebp - 0x3b88]
push eax
lea eax, [ebp - 0x155c]
push eax
push 0x80000000
lea eax, [ebp - 0x3c4c]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpCreateUrl]
test eax, eax
jne 0x2e00adcf
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00adc9
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
mov dword [ebp - 0x3bb0], 1
jmp 0x2e00ae08
mov dword [ebp - 0x3bb0], ebx
jmp 0x2e00ae08
cmp ecx, 0x198
je 0x2e00ae03
cmp ecx, 0x1f5
jbe 0x2e00ae3e
cmp ecx, 0x1f7
jbe 0x2e00ae34
cmp ecx, 0x1f8
jne 0x2e00ae3e
mov esi, 0x80070102
cmp esi, ebx
jne 0x2e00ae48
cmp dword [ebp - 0x3bb0], ebx
jne 0x2e00a956
jmp 0x2e00ae4e
cmp ecx, 0x191
je 0x2e00ae2a
cmp ecx, 0x193
jne 0x2e00ae3e
mov esi, 0x80070005
jmp 0x2e00b2f8
mov esi, 0x80070002
jmp 0x2e00b2f8
mov esi, 0x8000ffff
jmp 0x2e00b2f8
jl 0x2e00b2f8
lea eax, [ebp - 0x3ba4]
push eax
push dword [ebp - 0x3b5c]
call fcn.2e013fd8
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
mov ecx, dword [ebp + 0x18]
cmp ecx, ebx
je 0x2e00ae9e
mov eax, dword [ecx + 4]
cmp dword [ebp - 0x3ba0], eax
jb 0x2e00aeb7
jne 0x2e00ae88
mov eax, dword [ebp - 0x3ba4]
cmp eax, dword [ecx]
jbe 0x2e00aeb7
mov eax, dword [ebp - 0x3b78]
mov ecx, dword [eax]
push ebx
push ebx
push ebx
push ebx
push eax
call dword [ecx + 0x50]
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], ebx
lea eax, [ebp - 0x3bcc]
push eax
push dword [ebp - 0x3b5c]
call fcn.2e013f7f
mov esi, eax
jmp 0x2e00b008
xor edi, edi
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b2f6
mov eax, dword [ebp - 0x3b68]
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 3
push dword [eax + edi*4]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc edi
cmp edi, dword [ebp + 0x20]
jb 0x2e00aec2
jmp 0x2e00b2f6
mov esi, 0x8007000f
jmp 0x2e00b2f8
mov eax, 0x8000080
cmp edi, 2
jne 0x2e00af0f
cmp dword [0x2e022eec], ebx
je 0x2e00af1c
cmp edi, 3
jne 0x2e00af21
cmp dword [0x2e022ef4], ebx
jne 0x2e00af21
mov eax, 0x28000080
push ebx
push eax
push 3
push ebx
push 1
push 0x80000000
lea eax, [ebp - 0x25a4]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
mov dword [ebp - 0x3b8c], edi
cmp edi, 0xffffffff
jne 0x2e00af67
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00af61
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
lea eax, [ebp - 0x3ba4]
push eax
push edi
call fcn.2e01138f
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
mov ecx, dword [ebp + 0x18]
cmp ecx, ebx
je 0x2e00afba
mov eax, dword [ecx + 4]
cmp dword [ebp - 0x3ba0], eax
jb 0x2e00b0d9
jne 0x2e00afa4
mov eax, dword [ebp - 0x3ba4]
cmp eax, dword [ecx]
jbe 0x2e00b0d9
mov eax, dword [ebp - 0x3b78]
mov ecx, dword [eax]
push ebx
push ebx
push ebx
push ebx
push eax
call dword [ecx + 0x50]
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], ebx
lea eax, [ebp - 0x3bcc]
push eax
push edi
call fcn.2e011119
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
cmp dword [ebp + 0x14], ebx
jl 0x2e00b010
jg 0x2e00afdd
cmp dword [ebp + 0x10], ebx
jbe 0x2e00b010
push ebx
push ebx
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push edi
call dword [sym.imp.KERNEL32.dll_SetFilePointerEx]
test eax, eax
jne 0x2e00b010
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00b00a
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
xor edi, edi
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b04f
mov eax, dword [ebp - 0x3b68]
mov eax, dword [eax + edi*4]
mov ecx, dword [eax]
lea edx, [ebp - 0x3ba4]
push edx
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0x3bc8]
push dword [ebp - 0x3bcc]
push eax
call dword [ecx + 0x24]
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc edi
cmp edi, dword [ebp + 0x20]
jb 0x2e00b017
cmp dword [ebp - 0x3bcc], ebx
jne 0x2e00b115
cmp dword [ebp - 0x3bc8], ebx
jne 0x2e00b115
mov dword [ebp - 0x3b58], ebx
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b2f6
mov eax, dword [ebp - 0x3b68]
mov ecx, dword [ebp - 0x3b58]
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
lea edi, [eax + ecx*4]
push dword [edi]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 2
push dword [edi]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc dword [ebp - 0x3b58]
mov eax, dword [ebp - 0x3b58]
cmp eax, dword [ebp + 0x20]
jb 0x2e00b076
jmp 0x2e00b2f6
xor edi, edi
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b2f6
mov eax, dword [ebp - 0x3b68]
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 3
push dword [eax + edi*4]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc edi
cmp edi, dword [ebp + 0x20]
jb 0x2e00b0e4
jmp 0x2e00b2f6
mov eax, dword [ebp - 0x3ba8]
dec eax
dec eax
je 0x2e00b145
dec eax
je 0x2e00b13d
dec eax
je 0x2e00b12c
mov edi, 0x10000
jmp 0x2e00b159
mov ecx, dword [0x2e022f00]
mov eax, dword [0x2e022ee4]
lea edi, [ecx + eax - 1]
jmp 0x2e00b154
mov ecx, dword [0x2e022ef8]
jmp 0x2e00b132
mov eax, dword [0x2e022ee4]
mov ecx, dword [0x2e022ef0]
lea edi, [ecx + eax - 1]
dec eax
not eax
and edi, eax
push 4
push 0x3000
push edi
push ebx
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov dword [ebp - 0x3b74], eax
cmp eax, ebx
jne 0x2e00b2bd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00b190
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
jmp 0x2e00b2bd
mov eax, dword [ebp - 0x3b78]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
test eax, eax
jne 0x2e00b2c7
cmp dword [ebp - 0x3ba8], 2
je 0x2e00b1dd
cmp dword [ebp - 0x3ba8], 3
je 0x2e00b1dd
lea eax, [ebp - 0x3b94]
push eax
push edi
push dword [ebp - 0x3b74]
push dword [ebp - 0x3b5c]
call dword [sym.imp.WINHTTP.dll_WinHttpReadData]
jmp 0x2e00b1f8
push ebx
lea eax, [ebp - 0x3b94]
push eax
push edi
push dword [ebp - 0x3b74]
push dword [ebp - 0x3b8c]
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x2e00b21c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp esi, ebx
jle 0x2e00b216
and esi, 0xffff
or esi, 0x80070000
cmp esi, ebx
jl 0x2e00b2f8
mov dword [ebp - 0x3b58], ebx
cmp dword [ebp - 0x3b94], ebx
je 0x2e00b27c
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b2bd
push dword [ebp - 0x3b94]
mov eax, dword [ebp - 0x3b68]
push dword [ebp - 0x3b74]
mov ecx, dword [ebp - 0x3b58]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push dword [eax + ecx*4]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc dword [ebp - 0x3b58]
mov eax, dword [ebp - 0x3b58]
cmp eax, dword [ebp + 0x20]
jb 0x2e00b233
jmp 0x2e00b2bd
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b2ba
mov eax, dword [ebp - 0x3b68]
mov ecx, dword [ebp - 0x3b58]
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 2
push dword [eax + ecx*4]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc dword [ebp - 0x3b58]
mov eax, dword [ebp - 0x3b58]
cmp eax, dword [ebp + 0x20]
jb 0x2e00b281
xor esi, esi
inc esi
cmp esi, ebx
je 0x2e00b19b
jmp 0x2e00b2f6
xor edi, edi
cmp dword [ebp + 0x20], ebx
jbe 0x2e00b2f6
mov eax, dword [ebp - 0x3b68]
push ebx
push ebx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 4
push dword [eax + edi*4]
push dword [ebp - 0x3b64]
call fcn.2e00ffa1
mov esi, eax
cmp esi, ebx
jl 0x2e00b2f8
inc edi
cmp edi, dword [ebp + 0x20]
jb 0x2e00b2ce
xor esi, esi
mov eax, dword [ebp - 0x3b78]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x64]
cmp dword [ebp - 0x3b74], ebx
je 0x2e00b31e
push 0x8000
push ebx
push dword [ebp - 0x3b74]
call dword [sym.imp.KERNEL32.dll_VirtualFree]
cmp dword [ebp - 0x3b5c], ebx
je 0x2e00b332
push dword [ebp - 0x3b5c]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
cmp dword [ebp - 0x3b6c], ebx
je 0x2e00b346
push dword [ebp - 0x3b6c]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
cmp dword [ebp - 0x3b70], ebx
je 0x2e00b35a
push dword [ebp - 0x3b70]
call dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
cmp dword [ebp - 0x3b8c], 0xffffffff
je 0x2e00b36f
push dword [ebp - 0x3b8c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x3bd0], ebx
je 0x2e00b3af
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_SetThreadToken]
test eax, eax
jne 0x2e00b3af
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, ebx
jle 0x2e00b397
and eax, 0xffff
or eax, 0x80070000
push ebx
push ebx
push ebx
push ebx
mov esi, eax
push 0xc0000015
push esi
call fcn.2e0133b4
push esi
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [ebp - 0x3bc4], ebx
je 0x2e00b3c9
push dword [ebp - 0x3bf4]
push dword [ebp - 0x3b90]
call dword [sym.imp.USERENV.dll_UnloadUserProfile]
mov eax, dword [ebp - 0x3b64]
cmp eax, ebx
je 0x2e00b3d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.2e0142db
leave
ret 0x20