Function at 0x44d4a0
Capabilities:
Get common file path
Write file on windows

Disassembly:
push ebp
lea ebp, [esp - 0x434]
sub esp, 0x4b4
mov eax, dword [0x4772e0]
xor eax, ebp
mov dword [ebp + 0x430], eax
push ebx
push esi
push edi
push 0x104
push 0
push 0x47bd98
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x60], edx
call fcn.00413930
add esp, 0xc
push 0x47bd98
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push 0x47bd98
push str._s_rus.txt
push 0x47bd98
call fcn.00408a42
push str.rus.txt
call fcn.00409ed7
add esp, 0x10
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x3c], 0
call fcn.0044b160
xor eax, eax
push eax
push 0x47d240
mov dword [0x47e8a8], 0
mov dword [0x47e8ac], 0xffffffff
mov dword [0x47e8a4], 0xffffffff
mov dword [0x47becc], 0
mov word [0x47d874], ax
mov word [0x47d868], ax
mov word [0x47d86c], ax
mov dword [0x47d840], eax
mov dword [0x47d844], eax
call fcn.004606a0
mov ebx, eax
add esp, 8
mov dword [ebp - 0x40], ebx
test ebx, ebx
jne 0x44c0d0
push 0x104
call fcn.0040871a
add esp, 4
mov dword [0x47d0f0], eax
test eax, eax
jne 0x44b5e3
push 0x67
call fcn.0045aef0
add esp, 4
mov eax, dword [0x47a990]
shl eax, 2
push eax
call fcn.0040871a
add esp, 4
mov dword [0x47d0dc], eax
test eax, eax
jne 0x44b607
push 0x67
call fcn.0045aef0
add esp, 4
call fcn.0045dfa0
test eax, eax
jne 0x44b61a
push 0x67
call fcn.0045aef0
add esp, 4
push 0x104
push 0
push dword [0x47d0f0]
call fcn.00413930
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x5c]
add esp, 0xc
lea eax, [ebp + 0x420]
push eax
lea eax, [ebp + 0x180]
push eax
lea eax, [ebp + 0x31c]
push eax
sub esp, 8
call fcn.0044a390
add esp, 0x14
xor ecx, ecx
jmp 0x44b660
mov al, byte [ecx + 0x47d138]
mov byte [ecx + 0x47d438], al
lea ecx, [ecx + 1]
test al, al
jne 0x44b660
push 0x2e
push 0x47d438
call fcn.0040b3d0
mov esi, eax
add esp, 8
test esi, esi
je 0x44b6d1
push 0x5c
push esi
call fcn.00409900
add esp, 8
test eax, eax
jne 0x44b6d1
cmp esi, 0x47d438
je 0x44b6d1
cmp byte [esi - 1], 0x5c
je 0x44b6d1
test esi, esi
je 0x44b6d1
push str..asm
push esi
call fcn.00408968
add esp, 8
test eax, eax
jne 0x44b6d1
push 1
mov edx, str..amx
mov ecx, 0x47d438
call fcn.0044b0a0
add esp, 4
jmp 0x44b729
push 0x2e
push 0x47d438
call fcn.0040b3d0
mov esi, eax
add esp, 8
test esi, esi
je 0x44b707
push 0x5c
push esi
call fcn.00409900
add esp, 8
test eax, eax
jne 0x44b707
cmp esi, 0x47d438
je 0x44b707
cmp byte [esi - 1], 0x5c
je 0x44b707
test esi, esi
jne 0x44b729
mov ecx, 0x47d438
dec ecx
lea ecx, [ecx]
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x44b710
mov eax, dword [str..amx]
mov dword [ecx], eax
mov al, byte [0x46a1f0]
mov byte [ecx + 4], al
cmp dword [0x47c050], 0
push 0x2e
push 0x47d138
je 0x44b788
call fcn.0040b3d0
mov esi, eax
add esp, 8
test esi, esi
je 0x44b76a
push 0x5c
push esi
call fcn.00409900
add esp, 8
test eax, eax
jne 0x44b76a
cmp esi, 0x47d138
je 0x44b76a
cmp byte [esi - 1], 0x5c
je 0x44b76a
test esi, esi
je 0x44b76a
mov byte [esi], al
mov ecx, 0x47d138
dec ecx
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x44b770
mov eax, dword [str..lst]
mov dword [ecx], eax
mov al, byte [0x46a1f8]
jmp 0x44b7d6
call fcn.0040b3d0
mov esi, eax
add esp, 8
test esi, esi
je 0x44b7b9
push 0x5c
push esi
call fcn.00409900
add esp, 8
test eax, eax
jne 0x44b7b9
cmp esi, 0x47d138
je 0x44b7b9
cmp byte [esi - 1], 0x5c
je 0x44b7b9
test esi, esi
je 0x44b7b9
mov byte [esi], al
mov ecx, 0x47d138
dec ecx
nop
mov al, byte [ecx + 1]
lea ecx, [ecx + 1]
test al, al
jne 0x44b7c0
mov eax, dword [str..asm]
mov dword [ecx], eax
mov al, byte [0x46a1e8]
mov byte [ecx + 4], al
mov ecx, 0x47d330
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44b7e1
sub ecx, edx
je 0x44b7f9
push 0x47d330
call fcn.00409ed7
add esp, 4
call fcn.0044a210
mov al, byte [0x47a974]
mov byte [0x47a975], al
mov eax, dword [0x47c054]
mov dword [ebp - 0x38], eax
mov eax, dword [0x47967c]
mov dword [ebp - 0x30], eax
mov eax, dword [0x4794dc]
lea ecx, [ebp + 0x420]
mov dword [ebp - 0x50], eax
call fcn.0045ef40
test eax, eax
jne 0x44b839
push 0x6c
call fcn.0045aef0
add esp, 4
mov eax, dword [0x47bf38]
mov ecx, dword [0x47bf34]
cmp eax, 1
jle 0x44b977
cmp dword [ecx + 4], 0
je 0x44b977
push str.pawn
push 0
call fcn.00408d0d
mov edi, eax
push 0x46a1cc
push edi
mov dword [ebp - 0x44], edi
call fcn.0040a784
add esp, 0x10
mov ebx, eax
mov dword [ebp - 0x78], edi
xor ecx, ecx
mov dword [ebp - 0x34], ecx
test ecx, ecx
js 0x44b941
cmp ecx, dword [0x47bf38]
jge 0x44b941
mov eax, dword [0x47bf34]
mov edi, dword [eax + ecx*4]
test edi, edi
je 0x44b941
push 0x46a1c0
push edi
call fcn.0040a784
mov esi, eax
add esp, 8
test esi, esi
jne 0x44b8d9
mov edx, dword [0x47d0f0]
mov ecx, edi
sub edx, edi
mov al, byte [ecx]
mov byte [edx + ecx], al
lea ecx, [ecx + 1]
test al, al
jne 0x44b8c2
push edi
push 0x64
call fcn.0045aef0
add esp, 8
push ebx
push str.file__
call fcn.00409618
push ebx
push edi
call fcn.00409618
push ebx
push 0x46a204
call fcn.00409618
push esi
call fcn.00408ae0
add esp, 0x1c
test eax, eax
jne 0x44b92f
push esi
lea eax, [ebp + 0x100]
push 0x80
push eax
call fcn.0040a08a
lea eax, [ebp + 0x100]
push ebx
push eax
call fcn.00409618
push esi
call fcn.00408ae0
add esp, 0x18
test eax, eax
je 0x44b903
push esi
call fcn.0040bf2d
mov ecx, dword [ebp - 0x34]
add esp, 4
inc ecx
jmp 0x44b87d
push ebx
call fcn.0040bf2d
mov esi, dword [0x47d0f0]
mov edi, dword [ebp - 0x44]
mov edx, esi
add esp, 4
mov ecx, edi
sub edx, edi
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx + ecx], al
lea ecx, [ecx + 1]
test al, al
jne 0x44b960
push edi
call fcn.004086e2
add esp, 4
jmp 0x44b99c
test eax, eax
jle 0x44b97f
mov ecx, dword [ecx]
jmp 0x44b981
xor ecx, ecx
mov esi, dword [0x47d0f0]
mov edx, esi
sub edx, ecx
jmp 0x44b990
mov al, byte [ecx]
mov byte [edx + ecx], al
lea ecx, [ecx + 1]
test al, al
jne 0x44b990
push 0x46a1c0
push esi
call fcn.0040a784
add esp, 8
mov dword [0x47d0f8], eax
test eax, eax
jne 0x44b9c3
push dword [0x47d0f0]
push 0x64
call fcn.0045aef0
add esp, 8
push 0x1000
mov dword [0x47c098], 1
mov dword [ebp - 0x64], 0x1000
call fcn.0040871a
add esp, 4
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x68], 0
test eax, eax
jne 0x44b9f3
xor esi, esi
jmp 0x44ba2c
push 0x14
mov dword [ebp - 0x6c], 0
call fcn.0040871a
movq xmm0, qword [ebp - 0x74]
mov esi, eax
push 0x47d138
movq qword [esi], xmm0
movq xmm0, qword [ebp - 0x6c]
movq qword [esi + 8], xmm0
mov dword [esi + 0x10], 0x1000
call fcn.004087ac
add esp, 8
mov dword [esi], eax
mov dword [0x47c010], esi
test esi, esi
jne 0x44ba45
push 0x47d138
push 0x65
call fcn.0045aef0
add esp, 8
cmp dword [0x47d10c], 0
jne 0x44ba83
cmp dword [0x47c050], 0
jne 0x44ba83
push 0x46a120
push 0x47d438
call fcn.0040a784
mov ebx, eax
add esp, 8
mov dword [ebp - 0x3c], ebx
test ebx, ebx
jne 0x44ba8a
push 0x47d438
push 0x65
call fcn.0045aef0
add esp, 8
jmp 0x44ba8a
mov dword [ebp - 0x3c], 0
call fcn.00449b60
xor esi, esi
cmp dword [0x47bea4], esi
jle 0x44bacb
lea esp, [esp]
push dword [0x47d0f8]
push 0xfff
push 0x47c0a0
call fcn.0040a08a
add esp, 0xc
test eax, eax
je 0x44bac2
inc dword [0x47d2b4]
inc esi
cmp esi, dword [0x47bea4]
jl 0x44baa0
cmp dword [0x47c050], 0
mov eax, dword [0x47d2b4]
mov dword [0x47bea4], eax
mov dword [0x47c05c], 1
je 0x44bc01
push dword [0x4794dc]
cmp dword [0x47967c], 0
mov ecx, str.true
mov eax, ecx
mov edx, str.false
cmove eax, edx
cmp dword [0x47c054], 0
push eax
movsx eax, byte [0x47a974]
cmove ecx, edx
push ecx
push eax
lea eax, [ebp + 0x284]
push str.pragma_ctrlchar_0x_02x_npragma_pack__s_npragma_semicolon__s_npragma_tabsize__d_n
push eax
call fcn.00408a42
lea esi, [ebp + 0x284]
add esp, 0x18
lea ecx, [esi + 1]
lea esp, [esp]
mov al, byte [esi]
inc esi
test al, al
jne 0x44bb40
mov edi, dword [0x47c010]
sub esi, ecx
mov eax, dword [edi + 8]
mov ecx, dword [edi + 0x10]
add eax, esi
cmp eax, ecx
jbe 0x44bb82
mov eax, dword [edi + 4]
lea ebx, [ecx + esi]
add ebx, ebx
push ebx
push eax
mov dword [ebp - 0x44], eax
call fcn.004087fc
add esp, 8
mov dword [edi + 4], eax
test eax, eax
jne 0x44bb7f
mov eax, dword [ebp - 0x44]
mov dword [edi + 4], eax
jmp 0x44bba7
mov dword [edi + 0x10], ebx
push esi
lea eax, [ebp + 0x284]
push eax
mov eax, dword [edi + 4]
add eax, dword [edi + 8]
push eax
call fcn.00412750
add dword [edi + 8], esi
mov eax, dword [edi + 8]
add esp, 0xc
cmp eax, dword [edi + 0xc]
jle 0x44bba7
mov dword [edi + 0xc], eax
cmp dword [0x47c05c], 1
mov esi, dword [0x47d0f0]
jne 0x44bc01
cmp dword [0x47c050], 0
je 0x44bc01
push 7
mov edx, str.file__
mov ecx, edi
call fcn.0043ec70
mov ecx, esi
add esp, 4
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44bbd5
sub ecx, edx
push ecx
mov ecx, dword [0x47c010]
mov edx, esi
call fcn.0043ec70
mov ecx, dword [0x47c010]
push 2
mov edx, 0x46a204
call fcn.0043ec70
add esp, 8
push 0x47ec10
push dword [0x47d0f8]
mov dword [0x47bd94], 0
call fcn.00409a2b
mov ebx, dword [ebp - 0x38]
add esp, 8
call fcn.00442b50
push 0
push 1
xor edx, edx
mov ecx, 0x47bf98
call fcn.00452c20
add esp, 8
mov ecx, 0x47d540
call fcn.00402580
mov eax, dword [0x47d540]
lea ecx, [ebp - 0x54]
push ecx
mov dword [ebp - 0x54], eax
mov eax, dword [0x47d548]
push 0x10
push eax
mov dword [0x47d54c], eax
lea eax, [ebp - 0x7c]
push eax
mov ecx, 0x47d548
call fcn.00404820
mov ecx, dword [0x47bf24]
mov dword [0x47d554], 7
mov dword [0x47d558], 8
test ecx, ecx
je 0x44bca2
mov eax, dword [ecx]
push ecx
mov dword [0x47bf24], eax
call fcn.004086e2
mov ecx, dword [0x47bf24]
add esp, 4
test ecx, ecx
jne 0x44bc88
mov edi, dword [0x47bf40]
test edi, edi
je 0x44bcd1
lea esp, [esp]
push dword [edi + 4]
mov esi, dword [edi]
call fcn.004086e2
push dword [edi + 8]
call fcn.004086e2
push edi
call fcn.004086e2
add esp, 0xc
mov edi, esi
test esi, esi
jne 0x44bcb0
xorps xmm0, xmm0
xor eax, eax
mov ecx, 0x3b
mov edi, 0x47eb10
movq qword [0x47bf40], xmm0
movq qword [0x47bf48], xmm0
rep stosd dword es:[edi], eax
call fcn.0044b2e0
mov al, byte [0x47a975]
mov byte [0x47a974], al
mov eax, dword [ebp - 0x30]
mov dword [0x47967c], eax
mov eax, dword [ebp - 0x50]
mov dword [0x4794dc], eax
mov eax, dword [0x47d0f8]
push 0x47ec10
push eax
mov dword [0x47c054], ebx
mov dword [0x47e8a8], 0
mov dword [0x47d0f4], eax
mov dword [0x47c098], 1
call fcn.0040a051
mov eax, dword [0x47bea4]
lea ecx, [ebp + 0x31c]
add esp, 8
mov dword [0x47d2b4], eax
mov dword [0x47be9c], 0
mov dword [0x47c05c], 1
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44bd70
sub ecx, edx
je 0x44bde2
mov ecx, str.default.inc
lea eax, [ebp + 0x31c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x44bda6
test dl, dl
je 0x44bda2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x44bda6
add eax, 2
add ecx, 2
test dl, dl
jne 0x44bd86
xor eax, eax
jmp 0x44bdab
sbb eax, eax
or eax, 1
test eax, eax
jne 0x44bdc2
push ecx
xor edx, edx
lea ecx, [ebp + 0x31c]
call fcn.004530c0
add esp, 4
jmp 0x44bde2
lea ecx, [ebp + 0x31c]
call fcn.00451ea0
test eax, eax
jne 0x44bde2
lea eax, [ebp + 0x31c]
push eax
push 0x64
call fcn.0045aef0
add esp, 8
call fcn.004524f0
call fcn.00449770
inc dword [0x47bd94]
cmp dword [0x47be9c], 0
jne 0x44bc21
mov dword [0x47c05c], 2
call fcn.004604d0
cmp dword [0x47d0d0], 0
je 0x44beb0
call fcn.004097b8
lea ecx, [ebp + 0x180]
lea esi, [eax + 0x20]
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44be30
sub ecx, edx
je 0x44be51
lea eax, [ebp + 0x180]
push 0x46a120
push eax
call fcn.0040a784
add esp, 8
mov esi, eax
test esi, esi
je 0x44be94
cmp dword [0x47bf38], 0
jle 0x44be68
mov ecx, dword [0x47bf34]
mov eax, dword [ecx]
jmp 0x44be6a
xor eax, eax
push eax
mov edx, esi
call fcn.00442cb0
lea ecx, [ebp + 0x180]
add esp, 4
lea edx, [ecx + 1]
mov edi, edi
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44be80
sub ecx, edx
je 0x44be94
push esi
call fcn.0040bf2d
add esp, 4
mov eax, dword [0x47beb4]
test eax, eax
je 0x44beb0
push eax
call fcn.004086e2
add esp, 4
mov dword [0x47beb4], 0
cmp dword [0x47c050], 0
jne 0x44c0cd
call fcn.00442b50
push 0
push 1
xor edx, edx
mov ecx, 0x47bf98
call fcn.00452c20
add esp, 8
mov ecx, 0x47d540
call fcn.00402580
mov eax, dword [0x47d540]
lea edx, [ebp - 0x58]
push edx
mov dword [ebp - 0x58], eax
mov eax, dword [0x47d548]
push 0x10
push eax
mov dword [0x47d54c], eax
lea eax, [ebp - 0x80]
push eax
mov ecx, 0x47d548
call fcn.00404820
mov edi, dword [0x47bf40]
mov dword [0x47d554], 7
mov dword [0x47d558], 8
test edi, edi
je 0x44bf45
push dword [edi + 4]
mov esi, dword [edi]
call fcn.004086e2
push dword [edi + 8]
call fcn.004086e2
push edi
call fcn.004086e2
add esp, 0xc
mov edi, esi
test esi, esi
jne 0x44bf24
xorps xmm0, xmm0
xor eax, eax
mov ecx, 0x3b
mov edi, 0x47eb10
movq qword [0x47bf40], xmm0
movq qword [0x47bf48], xmm0
rep stosd dword es:[edi], eax
call fcn.0044b2e0
mov al, byte [0x47a975]
mov byte [0x47a974], al
mov eax, dword [ebp - 0x30]
mov dword [0x47967c], eax
mov eax, dword [ebp - 0x50]
mov dword [0x4794dc], eax
mov eax, dword [0x47d0f8]
push 0x47ec10
push eax
mov dword [0x47c054], ebx
mov dword [0x47e8a8], 0
mov dword [0x47d0f4], eax
mov dword [0x47c098], 1
call fcn.0040a051
mov eax, dword [0x47bea4]
mov dword [0x47d2b4], eax
xor eax, eax
add esp, 8
mov dword [0x47becc], 0
mov word [0x47d874], ax
mov word [0x47d868], ax
mov word [0x47d86c], ax
mov dword [0x47d840], eax
mov dword [0x47d844], eax
mov dword [0x47c05c], 2
call fcn.0045a220
cmp dword [0x47c05c], 2
jne 0x44c034
test byte [0x479714], 2
je 0x44c034
push dword [0x47d0f0]
lea eax, [ebp - 0x2c]
push dword [0x47d110]
push str.F:_x__s
push eax
call fcn.00408a42
add esp, 0x10
lea edx, [ebp - 0x2c]
mov ecx, 0x47bf50
call fcn.0045f4c0
lea ecx, [ebp + 0x31c]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c040
sub ecx, edx
je 0x44c09d
mov ecx, str.default.inc
lea eax, [ebp + 0x31c]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x44c076
test dl, dl
je 0x44c072
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x44c076
add eax, 2
add ecx, 2
test dl, dl
jne 0x44c056
xor eax, eax
jmp 0x44c07b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x44c092
push ecx
xor edx, edx
lea ecx, [ebp + 0x31c]
call fcn.004530c0
add esp, 4
jmp 0x44c09d
lea ecx, [ebp + 0x31c]
call fcn.00451ea0
call fcn.004524f0
call fcn.00449770
call fcn.00459c40
push 0
push 1
xor edx, edx
mov ecx, 0x47bf98
call fcn.004426b0
add esp, 8
test eax, eax
jne 0x44c0cd
push 0xd
call fcn.0045aef0
add esp, 4
mov ebx, dword [ebp - 0x40]
mov eax, dword [0x47d0f4]
test eax, eax
je 0x44c0ec
push eax
call fcn.0040bf2d
add esp, 4
mov dword [0x47d0f4], 0
mov eax, dword [0x47d10c]
test eax, eax
jne 0x44c132
cmp dword [0x47c050], eax
jne 0x44c132
cmp dword [0x47d134], eax
jne 0x44c132
test ebx, ebx
jne 0x44c132
mov edx, dword [0x47c010]
xor ecx, ecx
mov eax, dword [edx + 0xc]
test eax, eax
je 0x44c11e
cmovs ecx, eax
mov dword [edx + 8], ecx
mov ecx, dword [ebp - 0x3c]
call fcn.0045c7f0
mov edi, eax
mov eax, dword [0x47d10c]
mov dword [ebp - 0x48], edi
jmp 0x44c135
mov edi, dword [ebp - 0x48]
mov esi, dword [0x47c010]
test esi, esi
je 0x44c1a6
test eax, eax
jne 0x44c152
cmp dword [0x47c050], eax
jne 0x44c152
mov eax, 1
jmp 0x44c154
xor eax, eax
test eax, eax
jne 0x44c184
push 0x46a120
push dword [esi]
call fcn.0040a784
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x44c184
push ebx
push 1
push dword [esi + 0xc]
push dword [esi + 4]
call fcn.0040b344
push ebx
call fcn.0040bf2d
add esp, 0x14
push dword [esi]
call fcn.004086e2
push dword [esi + 4]
call fcn.004086e2
push esi
call fcn.004086e2
add esp, 0xc
mov dword [0x47c010], 0
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x44c1d9
xor ebx, ebx
cmp dword [0x47d134], ebx
push eax
setne bl
call fcn.0040bf2d
add esp, 4
test ebx, ebx
je 0x44c1d2
push 0x47d438
call fcn.00409ed7
add esp, 4
mov dword [ebp - 0x3c], 0
xor ebx, ebx
mov dword [ebp - 0x34], ebx
cmp dword [0x47d134], ebx
jne 0x44c473
mov ecx, 0x47d330
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c1f2
sub ecx, edx
jne 0x44c473
lea edx, [ebp - 0x4c]
call fcn.004428f0
cmp dword [0x47bd8c], 0
mov ebx, eax
je 0x44c22d
push edi
push str.Disable_recursion_warning:_pragma_disablerecursion_n
call fcn.0044d480
push edi
push 0x46a2a0
call fcn.0044d1e0
add esp, 0x10
mov ecx, 0x47d330
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c235
sub ecx, edx
jne 0x44c266
cmp dword [0x4790a4], ecx
jle 0x44c266
push str.Pawn_compiler_3.2.3664_t__t__tCopyright__c__1997_2016__ITB_CompuPhase_n_n
call fcn.0044d480
push str.Pawn_compiler_3.2.3664_t__t__tCopyright__c__1997_2016__ITB_CompuPhase_n_n
call fcn.0044d1e0
add esp, 8
mov dword [ebp - 0x34], 1
mov edx, dword [0x47d0e8]
mov ecx, dword [0x47d120]
xor esi, esi
test edx, edx
jle 0x44c2ad
mov eax, dword [0x47d110]
add eax, edi
mov dword [ebp - 0x30], eax
test ecx, ecx
jne 0x44c2a3
mov eax, dword [0x47a980]
add eax, dword [0x47c060]
mov edx, dword [ebp - 0x30]
lea edx, [edx + eax*4]
mov dword [ebp - 0x30], edx
mov edx, dword [0x47d0e8]
mov eax, dword [ebp - 0x30]
cmp eax, edx
mov eax, 1
cmovge esi, eax
test ecx, ecx
jle 0x44c2cf
mov eax, dword [0x47a980]
add eax, dword [0x47c060]
mov edx, dword [0x47d0e8]
shl eax, 2
cmp eax, ecx
mov eax, 1
cmovae esi, eax
cmp dword [0x4790a4], 2
jge 0x44c2eb
lea eax, [ebx + 0x20]
cmp eax, dword [0x47a980]
jge 0x44c2eb
test esi, esi
je 0x44c470
push edi
push str.Header_size:________8ld_bytes_n
call fcn.0044d480
push dword [0x47d110]
push str.Code_size:__________8ld_bytes_n
call fcn.0044d480
mov eax, dword [0x47c060]
shl eax, 2
push eax
push str.Data_size:__________8ld_bytes_n
call fcn.0044d480
mov eax, dword [0x47a980]
shl eax, 2
push eax
push str.Stack_heap_size:____8ld_bytes_
call fcn.0044d480
push str.estimated_max._usage
call fcn.0044d480
add esp, 0x24
cmp dword [ebp - 0x4c], 0
je 0x44c34e
push str.:_unknown__due_to_recursion_n
call fcn.0044d480
add esp, 4
jmp 0x44c37c
test byte [0x47c048], 1
je 0x44c366
push str.:_unknown__due_to_the__sleep__instruction_n
call fcn.0044d480
add esp, 4
jmp 0x44c37c
lea eax, [ebx*4]
push eax
push ebx
push str._ld_cells___ld_bytes__n
call fcn.0044d480
add esp, 0xc
mov ecx, dword [0x47c060]
add ecx, dword [0x47a980]
mov eax, dword [0x47d110]
lea eax, [eax + ecx*4]
add eax, edi
push eax
push str.Total_requirements:_8ld_bytes_n
call fcn.0044d480
push edi
push 0x46a3f8
call fcn.0044d1e0
push dword [0x47d110]
push 0x46a418
call fcn.0044d1e0
mov eax, dword [0x47c060]
shl eax, 2
push eax
push 0x46a434
call fcn.0044d1e0
mov eax, dword [0x47a980]
shl eax, 2
push eax
push 0x46a450
call fcn.0044d1e0
push 0x46a470
call fcn.0044d1e0
add esp, 0x2c
cmp dword [ebp - 0x4c], 0
je 0x44c400
push 0x46a490
call fcn.0044d1e0
add esp, 4
jmp 0x44c42e
test byte [0x47c048], 1
je 0x44c418
push 0x46a4b0
call fcn.0044d1e0
add esp, 4
jmp 0x44c42e
lea eax, [ebx*4]
push eax
push ebx
push str._ld
call fcn.0044d1e0
add esp, 0xc
mov ecx, dword [0x47c060]
add ecx, dword [0x47a980]
mov eax, dword [0x47d110]
lea eax, [eax + ecx*4]
add eax, edi
push eax
push 0x46a4f4
call fcn.0044d1e0
mov edx, dword [0x47d0e8]
mov ecx, dword [0x47d120]
add esp, 8
test esi, esi
je 0x44c470
lea eax, [ecx + edx]
push eax
push 0x6a
call fcn.0045aef0
add esp, 8
mov ebx, dword [ebp - 0x34]
test ebx, ebx
jne 0x44c4aa
mov ecx, 0x47d330
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c480
sub ecx, edx
jne 0x44c4aa
cmp dword [0x4790a4], ecx
jle 0x44c4aa
push str.Pawn_compiler_3.2.3664_t__t__tCopyright__c__1997_2016__ITB_CompuPhase_n_n
call fcn.0044d480
push str.Pawn_compiler_3.2.3664_t__t__tCopyright__c__1997_2016__ITB_CompuPhase_n_n
call fcn.0044d1e0
add esp, 8
mov ecx, dword [0x47d0f0]
test ecx, ecx
je 0x44c4e0
cmp dword [0x47bf38], 1
jle 0x44c4d7
mov eax, dword [0x47bf34]
cmp dword [eax + 4], 0
je 0x44c4d7
push ecx
call fcn.00409ed7
mov ecx, dword [0x47d0f0]
add esp, 4
push ecx
call fcn.004086e2
add esp, 4
mov eax, dword [0x47d0dc]
test eax, eax
je 0x44c4f2
push eax
call fcn.004086e2
add esp, 4
mov eax, dword [0x47bedc]
test eax, eax
je 0x44c522
push eax
call fcn.004086e2
add esp, 4
mov dword [0x47bedc], 0
mov dword [0x47bef4], 0
mov dword [0x47bef0], 0
mov eax, dword [0x47beec]
test eax, eax
je 0x44c552
push eax
call fcn.004086e2
add esp, 4
mov dword [0x47beec], 0
mov dword [0x47bee0], 0
mov dword [0x47bee4], 0
mov eax, dword [0x47bec4]
test eax, eax
je 0x44c578
push eax
call fcn.004086e2
add esp, 4
mov dword [0x47bec4], 0
mov dword [0x47bec0], 0
push 1
push 1
xor edx, edx
mov ecx, 0x47d2b8
call fcn.00452c20
push 1
push 1
xor edx, edx
mov ecx, 0x47bf98
call fcn.00452c20
mov eax, dword [0x47d284]
add esp, 0x10
test eax, eax
je 0x44c5b5
mov esi, dword [eax]
push eax
call fcn.004086e2
add esp, 4
mov eax, esi
test esi, esi
jne 0x44c5a4
push 0x30
push 0
push 0x47d284
call fcn.00413930
mov eax, dword [0x47d0a0]
add esp, 0xc
test eax, eax
je 0x44c5e1
nop
mov esi, dword [eax]
push eax
call fcn.004086e2
add esp, 4
mov eax, esi
test esi, esi
jne 0x44c5d0
push 0x30
push 0
push 0x47d0a0
call fcn.00413930
mov eax, dword [0x47c064]
add esp, 0xc
test eax, eax
je 0x44c611
jmp 0x44c600
mov esi, dword [eax]
push eax
call fcn.004086e2
add esp, 4
mov eax, esi
test esi, esi
jne 0x44c600
push 0x30
push 0
push 0x47c064
call fcn.00413930
mov eax, dword [0x47c018]
add esp, 0xc
test eax, eax
je 0x44c641
jmp 0x44c630
mov esi, dword [eax]
push eax
call fcn.004086e2
add esp, 4
mov eax, esi
test esi, esi
jne 0x44c630
push 0x30
push 0
push 0x47c018
call fcn.00413930
mov edi, dword [0x47bf80]
add esp, 0xc
test edi, edi
je 0x44c67f
lea esp, [esp]
mov esi, edi
mov edi, dword [edi]
push dword [esi + 4]
call fcn.004086e2
push esi
call fcn.004086e2
add esp, 8
test edi, edi
jne 0x44c660
mov dword [0x47bf80], edi
mov edi, dword [0x47bf60]
test edi, edi
je 0x44c6b1
lea esp, [esp]
push dword [edi + 4]
mov esi, dword [edi]
call fcn.004086e2
push dword [edi + 8]
call fcn.004086e2
push edi
call fcn.004086e2
add esp, 0xc
mov edi, esi
test esi, esi
jne 0x44c690
xorps xmm0, xmm0
xor esi, esi
movq qword [0x47bf60], xmm0
movq qword [0x47bf68], xmm0
cmp dword [0x47bf7c], esi
jle 0x44c6e9
mov edi, edi
mov eax, dword [0x47bf70]
push dword [eax + esi*4]
call fcn.004086e2
inc esi
add esp, 4
cmp esi, dword [0x47bf7c]
jl 0x44c6d0
push dword [0x47bf70]
call fcn.004086e2
xorps xmm0, xmm0
xor esi, esi
add esp, 4
movq qword [0x47bf70], xmm0
movq qword [0x47bf78], xmm0
cmp dword [0x47bf3c], esi
jle 0x44c739
jmp 0x44c720
mov eax, dword [0x47bf30]
push dword [eax + esi*4]
call fcn.004086e2
inc esi
add esp, 4
cmp esi, dword [0x47bf3c]
jl 0x44c720
push dword [0x47bf30]
call fcn.004086e2
xorps xmm0, xmm0
xor esi, esi
add esp, 4
movq qword [0x47bf30], xmm0
movq qword [0x47bf38], xmm0
cmp dword [0x47bf5c], esi
jle 0x44c789
jmp 0x44c770
mov eax, dword [0x47bf50]
push dword [eax + esi*4]
call fcn.004086e2
inc esi
add esp, 4
cmp esi, dword [0x47bf5c]
jl 0x44c770
push dword [0x47bf50]
call fcn.004086e2
mov edi, dword [0x47bf40]
xorps xmm0, xmm0
add esp, 4
movq qword [0x47bf50], xmm0
movq qword [0x47bf58], xmm0
test edi, edi
je 0x44c7d5
push dword [edi + 4]
mov esi, dword [edi]
call fcn.004086e2
push dword [edi + 8]
call fcn.004086e2
push edi
call fcn.004086e2
add esp, 0xc
mov edi, esi
test esi, esi
jne 0x44c7b4
xor eax, eax
xorps xmm0, xmm0
mov ecx, 0x3b
mov edi, 0x47eb10
xor esi, esi
movq qword [0x47bf40], xmm0
movq qword [0x47bf48], xmm0
rep stosd dword es:[edi], eax
cmp dword [0x47bf10], eax
jle 0x44c819
mov eax, dword [0x47bf04]
push dword [eax + esi*4]
call fcn.004086e2
inc esi
add esp, 4
cmp esi, dword [0x47bf10]
jl 0x44c800
push dword [0x47bf04]
call fcn.004086e2
mov eax, dword [0x47beb4]
xorps xmm0, xmm0
add esp, 4
movq qword [0x47bf04], xmm0
movq qword [0x47bf0c], xmm0
test eax, eax
je 0x44c84c
push eax
call fcn.004086e2
add esp, 4
xor esi, esi
cmp dword [0x47bf20], esi
jle 0x44c879
jmp 0x44c860
mov eax, dword [0x47bf14]
push dword [eax + esi*4]
call fcn.004086e2
inc esi
add esp, 4
cmp esi, dword [0x47bf20]
jl 0x44c860
push dword [0x47bf14]
call fcn.004086e2
mov ecx, dword [0x47bf24]
xorps xmm0, xmm0
add esp, 4
movq qword [0x47bf14], xmm0
movq qword [0x47bf1c], xmm0
test ecx, ecx
je 0x44c8be
mov eax, dword [ecx]
push ecx
mov dword [0x47bf24], eax
call fcn.004086e2
mov ecx, dword [0x47bf24]
add esp, 4
test ecx, ecx
jne 0x44c8a4
mov edx, dword [0x47d134]
test edx, edx
je 0x44c914
mov ecx, 0x47d330
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c8d0
sub ecx, esi
jne 0x44c90a
mov ecx, 0x46a0d6
cmp edx, 1
mov eax, 0x46a510
cmovle eax, ecx
push eax
push edx
push str._n_d_Error_s._n
call fcn.0044d480
push dword [0x47d134]
push 0x46a524
call fcn.0044d1e0
add esp, 0x14
mov ebx, 1
jmp 0x44c99e
mov edx, dword [0x47bea0]
add edx, dword [0x47d0e0]
je 0x44c977
mov ecx, 0x47d330
lea esi, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x44c930
sub ecx, esi
jne 0x44c970
mov ecx, 0x46a0d6
cmp edx, 1
mov eax, 0x46a510
cmovle eax, ecx
push eax
push edx
push str._n_d_Warning_s._n
call fcn.0044d480
mov eax, dword [0x47bea0]
add eax, dword [0x47d0e0]
push eax
push 0x46a544
call fcn.0044d1e0
add esp, 0x14
mov ebx, 2
jmp 0x44c99e
mov ebx, dword [ebp - 0x40]
test ebx, ebx
jne 0x44c99e
cmp dword [0x4790a4], 2
jl 0x44c99e
push str._nDone._n
call fcn.0044d480
push 0x46a564
call fcn.0044d1e0
add esp, 8
push dword [0x47bd88]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x44c9c9
push 0
push ebx
push str.PawnNotify
call dword [sym.imp.USER32.dll_RegisterWindowMessageA]
push eax
push dword [0x47bd88]
call dword [sym.imp.USER32.dll_PostMessageA]
mov ecx, dword [ebp + 0x430]
pop edi
pop esi
mov eax, ebx
xor ecx, ebp
pop ebx
call fcn.004086d3
lea esp, [ebp + 0x434]
pop ebp
ret
mov edx, dword [esp + 8]
mov ecx, dword [esp + 4]
jmp 0x44b4e0