Function at 0x413490
Capabilities:
Get file version info
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
cmp dword [0x1826468], 0x64
jae 0x4141d5
cmp dword [ebp + 8], 0
je 0x4141d5
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
test ecx, ecx
je 0x4141d5
push 0x298
call fcn.004019e5
add esp, 4
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x4134de
mov ecx, dword [ebp - 0x28]
call fcn.00401270
mov dword [ebp - 0x3c], eax
jmp 0x4134e5
mov dword [ebp - 0x3c], 0
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x24], edx
mov eax, dword [0x1826468]
mov ecx, dword [ebp - 0x24]
mov dword [eax*4 + 0x4262c8], ecx
mov edx, dword [0x1826468]
cmp dword [edx*4 + 0x4262c8], 0
je 0x4141d5
push 0x103
push 0x5c
mov eax, dword [ebp + 8]
push eax
call fcn.00401000
add esp, 8
add eax, 2
push eax
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
push edx
call fcn.00401cda
add esp, 0xc
push 8
push 0
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x21c], eax
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x21c], 0
je 0x414192
push str.esprfunc0001
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x220], eax
push str.esprfunc0035
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x224], eax
push str.esprfunc0003
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x228], eax
push str.esprfunc0004
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x22c], eax
push str.esprfunc0005
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x230], eax
push str.esprfunc0006
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x234], eax
push str.esprfunc0007
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x238], eax
push str.esprfunc0008
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x23c], eax
push str.esprfunc0009
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x240], eax
push str.esprfunc0010
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x244], eax
push str.esprfunc0011
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x248], eax
push str.esprfunc0012
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x24c], eax
push str.esprfunc0013
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x250], eax
push str.esprfunc0014
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x254], eax
push str.esprfunc0015
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x258], eax
push str.esprfunc0016
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x25c], eax
push str.esprfunc0018
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x260], eax
push str.esprfunc0019
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x264], eax
push str.esprfunc0020
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x268], eax
push str.esprfunc0021
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x26c], eax
push str.esprfunc0022
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x270], eax
push str.esprfunc0023
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x274], eax
push str.esprfunc0024
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x278], eax
push str.esprfunc0025
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x27c], eax
push str.esprfunc0026
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x280], eax
push str.esprfunc0028
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x284], eax
push str.esprfunc0029
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x288], eax
push str.esprfunc0030
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x28c], eax
push str.esprfunc0036
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov ecx, dword [eax + 0x21c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, dword [0x1826468]
mov ecx, dword [edx*4 + 0x4262c8]
mov dword [ecx + 0x290], eax
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x220], 0
je 0x414178
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x228], 0
je 0x414178
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x22c], 0
je 0x414178
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x230], 0
je 0x414178
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x234], 0
je 0x414178
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x238], 0
je 0x414178
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x280], 0
jne 0x413c1c
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x284], 0
je 0x414178
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x288], 0
je 0x414178
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x28c], 0
je 0x414178
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x224], 0
jne 0x413c48
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x224], 0x412d10
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x23c], 0
jne 0x413c75
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x23c], 0x412d00
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x240], 0
jne 0x413ca1
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x240], 0x412cf0
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x244], 0
jne 0x413ccd
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x244], 0x412ce0
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x248], 0
jne 0x413cfa
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x248], 0x412cd0
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x24c], 0
jne 0x413d26
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x24c], 0x412cb0
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x250], 0
jne 0x413d52
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x250], 0x412c50
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x254], 0
jne 0x413d7f
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x254], 0x412c30
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x258], 0
jne 0x413dab
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x258], 0x412bd0
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x25c], 0
jne 0x413dd7
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x25c], 0x412bc0
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x260], 0
jne 0x413e04
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x260], 0x412bb0
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x264], 0
jne 0x413e30
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x264], 0x412ba0
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x268], 0
jne 0x413e5c
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x268], 0x412b90
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x26c], 0
jne 0x413e89
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x26c], 0x412c20
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x270], 0
jne 0x413eb5
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x270], 0x412c10
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x274], 0
jne 0x413ee1
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x274], 0x412c00
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x278], 0
jne 0x413f0e
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x278], 0x412bf0
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x27c], 0
jne 0x413f3a
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x27c], 0x412be0
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x284], 0
jne 0x413f66
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x284], 0x412b80
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
cmp dword [eax + 0x288], 0
jne 0x413f93
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x288], 0x412b70
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
cmp dword [ecx + 0x28c], 0
jne 0x413fbf
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
mov dword [eax + 0x28c], 0x412b60
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
cmp dword [edx + 0x290], 0
jne 0x413feb
mov eax, dword [0x1826468]
mov ecx, dword [eax*4 + 0x4262c8]
mov dword [ecx + 0x290], 0x412b40
cmp dword [ebp + 0xc], 0
je 0x413ffb
mov edx, dword [ebp + 0xc]
mov eax, dword [0x1826468]
mov dword [edx], eax
mov dword [ebp - 8], 0
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 8]
push edx
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x414108
mov eax, dword [ebp - 4]
push eax
call fcn.004019e5
add esp, 4
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], 0
je 0x414108
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 4]
push eax
push 0
mov ecx, dword [ebp + 8]
push ecx
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x4140f6
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x14]
push eax
push 0x421900
mov ecx, dword [ebp - 0x10]
push ecx
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x4140f6
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0xc]
shr eax, 0x10
and eax, 0xffff
movzx ecx, ax
and ecx, 0xff
movzx edx, cl
push edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0xc]
shr ecx, 0x10
and ecx, 0xffff
movzx edx, cx
shr edx, 8
and edx, 0xff
movzx eax, dl
push eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 8]
and edx, 0xffff
movzx eax, dx
push eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 8]
shr edx, 0x10
and edx, 0xffff
movzx eax, dx
push eax
call fcn.00401230
add esp, 0x10
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [edx + 0x208], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00401970
add esp, 4
push 0
push 0
push 3
push 0
push 1
push 0x80000000
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x414167
lea eax, [ebp - 0x20]
push eax
push 0
push 0
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
je 0x41415d
mov edx, dword [0x1826468]
mov eax, dword [edx*4 + 0x4262c8]
add eax, 0x20c
push eax
lea ecx, [ebp - 0x20]
push ecx
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x1826468]
add eax, 1
mov dword [0x1826468], eax
mov al, 1
jmp 0x4141e6
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov eax, dword [edx + 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ecx, dword [0x1826468]
mov edx, dword [ecx*4 + 0x4262c8]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x4141bd
push 1
mov ecx, dword [ebp - 0x34]
call fcn.004012e0
mov dword [ebp - 0x40], eax
jmp 0x4141c4
mov dword [ebp - 0x40], 0
mov ecx, dword [0x1826468]
mov dword [ecx*4 + 0x4262c8], 0
cmp dword [ebp + 0xc], 0
je 0x4141e4
mov edx, dword [ebp + 0xc]
mov dword [edx], 0xffffffff
xor al, al
mov esp, ebp
pop ebp
ret