Function at 0x43b980
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x148
mov eax, dword [0x7079d0]
xor eax, esp
mov dword [esp + 0x144], eax
cmp dword [esp + 0x150], 0
mov eax, dword [esp + 0x154]
push ebx
mov ebx, dword [esp + 0x150]
push ebp
push esi
mov esi, dword [sym.imp.MSVCR90.dll_strncpy]
push edi
mov dword [esp + 0x18], eax
push 0x50
jne 0x43b9dc
lea ecx, [esp + 0xb8]
push str._____BEGIN_CERTIFICATE_____
push ecx
call esi
push 0x50
push str._____END_CERTIFICATE_____
lea edx, [esp + 0x118]
push edx
jmp 0x43b9fa
lea eax, [esp + 0xb8]
push str._____BEGIN_RSA_PRIVATE_KEY_____
push eax
call esi
push 0x50
push str._____END_RSA_PRIVATE_KEY_____
lea ecx, [esp + 0x118]
push ecx
call esi
mov esi, dword [sym.imp.MSVCR90.dll_fgets]
add esp, 0x18
push ebx
lea edx, [esp + 0x68]
push 0x50
push edx
or edi, 0xffffffff
mov dword [esp + 0x20], 0
mov byte [esp + 0x1f], 0
call esi
add esp, 0xc
test eax, eax
je 0x43ba82
jmp 0x43ba30
lea eax, [esp + 0xb4]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43ba40
sub eax, edx
push eax
lea eax, [esp + 0x68]
push eax
lea ecx, [esp + 0xbc]
push ecx
call dword [sym.imp.MSVCR90.dll_strncmp]
add esp, 0xc
push ebx
test eax, eax
je 0x43ba77
lea edx, [esp + 0x68]
push 0x50
push edx
call esi
add esp, 0xc
test eax, eax
jne 0x43ba30
jmp 0x43ba82
call dword [sym.imp.MSVCR90.dll_ftell]
add esp, 4
mov edi, eax
push ebx
lea eax, [esp + 0x68]
push 0x50
push eax
call esi
add esp, 0xc
test eax, eax
je 0x43bbdb
mov ax, word [0x48bac0]
mov edx, dword [0x48babc]
mov ecx, dword [str.Proc_Type]
mov word [esp + 0x60], ax
lea eax, [esp + 0x58]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x58], ecx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43bac0
sub eax, edx
push eax
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x60]
push edx
call dword [sym.imp.MSVCR90.dll_strncmp]
add esp, 0xc
test eax, eax
jne 0x43bbdb
push ebx
lea eax, [esp + 0x68]
push 0x50
push eax
call esi
add esp, 0xc
test eax, eax
je 0x43bbdb
mov edi, dword [sym.imp.MSVCR90.dll_strstr]
lea ecx, [esp + 0x64]
push 0x48bab4
push ecx
call edi
lea edx, [esp + 0x6c]
push 0x4866d8
push edx
mov esi, eax
call edi
add esp, 0x10
mov ebp, eax
test esi, esi
jne 0x43bb34
lea eax, [esp + 0x64]
push 0x48bab0
push eax
call edi
add esp, 8
mov esi, eax
mov edi, dword [esp + 0x18]
test edi, edi
je 0x43bc91
test esi, esi
je 0x43bbab
test ebp, ebp
je 0x43bbab
cmp esi, ebp
jae 0x43bbab
mov ecx, ebp
sub ecx, esi
push ecx
push esi
push edi
call sub.MSVCR90.dll_memcpy
mov edx, edi
sub edx, esi
mov byte [edx + ebp], 0
lea esi, [ebp + 1]
add edi, 0x50
mov ecx, 8
lea eax, [esp + 0x70]
rep movsd dword es:[edi], dword [esi]
mov esi, dword [sym.imp.MSVCR90.dll_strstr]
push 0x48baac
push eax
call esi
add esp, 0x14
test eax, eax
jne 0x43bb99
lea ecx, [esp + 0x64]
push 0x4866cc
push ecx
call esi
add esp, 8
test eax, eax
je 0x43bbab
cmp eax, ebp
jbe 0x43bbab
mov ecx, dword [esp + 0x18]
sub eax, ebp
dec eax
mov dword [ecx + 0x70], eax
mov byte [ecx + 0x74], 1
push ebx
call dword [sym.imp.MSVCR90.dll_ftell]
push ebx
lea edx, [esp + 0x6c]
push 0x50
push edx
mov edi, eax
call dword [sym.imp.MSVCR90.dll_fgets]
add esp, 0x10
test eax, eax
je 0x43bbd5
push ebx
call dword [sym.imp.MSVCR90.dll_ftell]
add esp, 4
mov edi, eax
mov esi, dword [sym.imp.MSVCR90.dll_fgets]
push ebx
lea eax, [esp + 0x68]
push 0x50
push eax
call esi
add esp, 0xc
test eax, eax
je 0x43bc43
mov ebp, dword [sym.imp.MSVCR90.dll_strncmp]
lea eax, [esp + 0x104]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43bc00
sub eax, edx
push eax
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x10c]
push edx
call ebp
add esp, 0xc
test eax, eax
je 0x43bc3e
push ebx
call dword [sym.imp.MSVCR90.dll_ftell]
push ebx
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x6c]
push 0x50
push eax
call esi
add esp, 0x10
test eax, eax
jne 0x43bbf2
jmp 0x43bc43
mov byte [esp + 0x13], 1
cmp edi, 0xffffffff
je 0x43bc91
cmp byte [esp + 0x13], 0
je 0x43bc91
mov esi, dword [esp + 0x14]
sub esi, edi
push esi
lea ecx, [esp + 0x34]
call fcn.00451ad0
push 0
push edi
push ebx
call dword [sym.imp.MSVCR90.dll_fseek]
add esp, 0xc
push ebx
push 1
push esi
lea ecx, [esp + 0x3c]
call fcn.00451b40
push eax
call dword [sym.imp.MSVCR90.dll_fread]
add esp, 0x10
lea ecx, [esp + 0x30]
cmp eax, 1
je 0x43bcac
call fcn.00451dd0
xor eax, eax
mov ecx, dword [esp + 0x154]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00466e0a
add esp, 0x148
ret
push esi
call fcn.00451b40
push eax
lea ecx, [esp + 0x24]
call fcn.0041d150
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x4c]
call fcn.0043b7c0
movzx edx, byte [0x786e84]
mov edi, dword [esp + 0x20]
push edx
push 8
call fcn.00431e40
add esp, 8
test eax, eax
je 0x43bcf0
push edi
mov ecx, eax
call fcn.00446480
mov esi, eax
jmp 0x43bcf2
xor esi, esi
mov eax, dword [esp + 0x24]
push edi
push eax
mov ecx, esi
call fcn.00446510
push eax
call sub.MSVCR90.dll_memcpy
push 0
call fcn.0041ce40
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x60]
push ecx
push 0
push eax
mov edi, eax
call sub.MSVCR90.dll_memset
push edi
call fcn.0041c840
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
push edx
push 0
push eax
mov edi, eax
call sub.MSVCR90.dll_memset
push edi
call fcn.0041c840
add esp, 0x30
lea ecx, [esp + 0x30]
call fcn.00451dd0
mov eax, esi
jmp 0x43bc93