Function at 0x40c720
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x1d0
mov eax, dword [0x444d08]
xor eax, esp
mov dword [esp + 0x1cc], eax
mov eax, dword [esp + 0x1d8]
push ebx
push ebp
push esi
push edi
mov edi, 0x1ae1
mov word [esp + 0x34], di
mov edi, 0x41b6
mov word [esp + 0x36], di
mov edi, 0x1ae1
mov esi, 0xe656ef12
mov word [esp + 0x4c], di
mov edi, 0x41b6
mov word [esp + 0x4e], di
mov edi, 0x1ae1
mov dword [esp + 0x18], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x78], esi
mov ecx, 0x1ae1
mov edx, 0x41b6
mov esi, 0x1ae1
mov bl, 0xa5
mov word [esp + 0x64], di
mov edi, 0x41b6
mov dword [esp + 0x10], eax
mov al, 0xe1
mov word [esp + 0x1c], cx
mov ecx, 0xff
mov word [esp + 0x1e], dx
mov dl, 2
mov word [esp + 0x7c], si
mov esi, edi
mov dword [esp + 0x14], str.SystemManufacturer
mov byte [esp + 0x20], 0x84
mov byte [esp + 0x21], dl
mov byte [esp + 0x22], 0x83
mov byte [esp + 0x23], 0x9b
mov byte [esp + 0x24], bl
mov byte [esp + 0x25], 0x9c
mov byte [esp + 0x26], 0x58
mov byte [esp + 0x27], al
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], str.BoardManufacturer
mov byte [esp + 0x38], 0x84
mov byte [esp + 0x39], dl
mov byte [esp + 0x3a], 0x83
mov byte [esp + 0x3b], 0x9b
mov byte [esp + 0x3c], bl
mov byte [esp + 0x3d], 0x9c
mov byte [esp + 0x3e], 0x58
mov byte [esp + 0x3f], al
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], str.SystemProductName
mov byte [esp + 0x50], 0x84
mov byte [esp + 0x51], dl
mov byte [esp + 0x52], 0x83
mov byte [esp + 0x53], 0x9b
mov byte [esp + 0x54], bl
mov byte [esp + 0x55], 0x9c
mov byte [esp + 0x56], 0x58
mov byte [esp + 0x57], al
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], str.SystemSerialNumber
mov word [esp + 0x66], di
mov byte [esp + 0x68], 0x84
mov byte [esp + 0x69], dl
mov byte [esp + 0x6a], 0x83
mov byte [esp + 0x6b], 0x9b
mov byte [esp + 0x6c], bl
mov byte [esp + 0x6d], 0x9c
mov byte [esp + 0x6e], 0x58
mov byte [esp + 0x6f], al
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], str.Uuid
mov word [esp + 0x7e], si
mov byte [esp + 0x80], 0x84
mov byte [esp + 0x81], dl
mov byte [esp + 0x82], 0x83
mov byte [esp + 0x83], 0x9b
mov edi, 0x259b
mov word [esp + 0x94], di
mov byte [esp + 0x87], al
mov byte [esp + 0x9d], al
mov byte [esp + 0xb5], al
mov byte [esp + 0xcd], al
mov esi, 0x2e419023
mov edi, 0x4440
mov word [esp + 0x96], di
mov eax, 0xdf00
mov dword [esp + 0x90], esi
mov dword [esp + 0xa8], esi
mov edi, 0x259b
mov dword [esp + 0xc0], esi
mov word [esp + 0xdc], ax
mov esi, 0x259b
mov eax, 0x4d42
mov word [esp + 0xac], di
mov edi, 0x4440
mov word [esp + 0xc4], si
mov word [esp + 0xde], ax
mov esi, edi
mov eax, 0x1253
mov word [esp + 0xc6], si
mov word [esp + 0xf4], ax
mov esi, 0x200
mov eax, 0x4464
mov byte [esp + 0x84], bl
mov byte [esp + 0x85], 0x9c
mov byte [esp + 0x86], 0x58
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], str.POSTInfo
mov byte [esp + 0x98], 0xbc
mov byte [esp + 0x99], 0x3d
mov byte [esp + 0x9a], 0xbd
mov byte [esp + 0x9b], 0x9e
mov byte [esp + 0x9c], 0xa1
mov byte [esp + 0x9e], 0xbf
mov byte [esp + 0x9f], 0xda
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], str.Version
mov word [esp + 0xae], di
mov byte [esp + 0xb0], 0xbc
mov byte [esp + 0xb1], 0x3d
mov byte [esp + 0xb2], 0xbd
mov byte [esp + 0xb3], 0x9e
mov byte [esp + 0xb4], 0xa1
mov byte [esp + 0xb6], 0xbf
mov byte [esp + 0xb7], 0xda
mov dword [esp + 0xb8], 0x40
mov dword [esp + 0xbc], 0x43e0a0
mov byte [esp + 0xc8], 0xbc
mov byte [esp + 0xc9], 0x3d
mov byte [esp + 0xca], 0xbd
mov byte [esp + 0xcb], 0x9e
mov byte [esp + 0xcc], 0xa1
mov byte [esp + 0xce], 0xbf
mov byte [esp + 0xcf], 0xda
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xd4], str.Setup
mov dword [esp + 0xd8], 0xa04a27f4
mov byte [esp + 0xe0], 0xb5
mov byte [esp + 0xe1], 0x52
mov byte [esp + 0xe2], 0x39
mov byte [esp + 0xe3], 0x51
mov byte [esp + 0xe4], 0x13
mov byte [esp + 0xe5], dl
mov byte [esp + 0xe6], 0x11
mov byte [esp + 0xe7], 0x3d
mov dword [esp + 0xe8], esi
mov dword [esp + 0xec], str.BootPriority
mov dword [esp + 0xf0], 0x66ac5f98
mov word [esp + 0xf6], ax
mov byte [esp + 0xf8], 0xa2
mov byte [esp + 0xf9], 0xd
mov byte [esp + 0xfa], 0x55
mov byte [esp + 0xfb], 0x22
mov byte [esp + 0xfc], 0x88
mov byte [esp + 0xfd], 0xda
mov byte [esp + 0xfe], dl
mov byte [esp + 0xff], 0xf5
mov dword [esp + 0x100], esi
mov dword [esp + 0x118], esi
mov esi, 0xec10
mov word [esp + 0x124], si
mov esi, 0x488a
mov word [esp + 0x126], si
mov esi, 0xe342caa6
mov dword [esp + 0x138], esi
mov dword [esp + 0x150], esi
mov ebp, 0xaffa
mov esi, 0xaffa
mov word [esp + 0x13c], bp
mov ebp, 0x4e5c
mov word [esp + 0x154], si
mov esi, ebp
mov word [esp + 0x156], si
mov edx, 0x93ca
mov eax, 0x11d2
mov esi, 0xfa24
mov word [esp + 0x10c], dx
mov word [esp + 0x10e], ax
mov al, 0x2b
mov word [esp + 0x16c], si
mov edi, 0x8be4df61
xor edx, edx
mov esi, 0x4006
mov dword [esp + 0x104], str.LastBootRecord
mov dword [esp + 0x108], edi
mov byte [esp + 0x110], 0xaa
mov byte [esp + 0x111], 0xd
mov byte [esp + 0x112], dl
mov byte [esp + 0x113], 0xe0
mov byte [esp + 0x114], 0x98
mov byte [esp + 0x115], 3
mov byte [esp + 0x116], al
mov byte [esp + 0x117], 0x8c
mov dword [esp + 0x11c], str.AcpiGlobalVariable
mov dword [esp + 0x120], 0xaf9ffd67
mov byte [esp + 0x128], 0x9d
mov byte [esp + 0x129], 0xfc
mov byte [esp + 0x12a], 0x6c
mov byte [esp + 0x12b], 0xbf
mov byte [esp + 0x12c], 0x5e
mov byte [esp + 0x12d], 0xe2
mov byte [esp + 0x12e], 0x2c
mov byte [esp + 0x12f], 0x2e
mov dword [esp + 0x130], ecx
mov dword [esp + 0x134], str.SLP2M
mov word [esp + 0x13e], bp
mov byte [esp + 0x140], 0x99
mov byte [esp + 0x141], 0x6a
mov byte [esp + 0x142], 0x28
mov byte [esp + 0x143], 0xec
mov byte [esp + 0x144], 0x3b
mov byte [esp + 0x145], bl
mov byte [esp + 0x146], 0xd7
mov byte [esp + 0x147], 0x5d
mov dword [esp + 0x148], ecx
mov dword [esp + 0x14c], str.SLP2P
mov byte [esp + 0x158], 0x99
mov byte [esp + 0x159], 0x6a
mov byte [esp + 0x15a], 0x28
mov byte [esp + 0x15b], 0xec
mov byte [esp + 0x15c], 0x3b
mov byte [esp + 0x15d], bl
mov byte [esp + 0x15e], 0xd7
mov byte [esp + 0x15f], 0x5d
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], str.OneKeyBak
mov dword [esp + 0x168], 0x5bd62caf
mov word [esp + 0x16e], si
mov byte [esp + 0x170], 0x89
mov byte [esp + 0x171], al
mov byte [esp + 0x172], 0x57
mov byte [esp + 0x173], 0x4b
mov byte [esp + 0x174], 0x15
mov byte [esp + 0x175], 0x70
mov byte [esp + 0x176], 0x7f
mov byte [esp + 0x177], 0x60
mov dword [esp + 0x178], ecx
mov dword [esp + 0x17c], str.PerfDataMemAddr
mov esi, 0x93ca
mov word [esp + 0x184], si
mov esi, 0x11d2
mov word [esp + 0x186], si
mov byte [esp + 0x18e], al
mov eax, 0xf5d1
mov esi, 0x6a97
mov word [esp + 0x19c], ax
mov word [esp + 0x1b4], si
mov eax, 0x46c5
mov esi, 0x444b
mov word [esp + 0x19e], ax
mov eax, 1
mov word [esp + 0x1b6], si
xor esi, esi
mov dword [esp + 0x180], edi
mov byte [esp + 0x188], 0xaa
mov byte [esp + 0x189], 0xd
mov byte [esp + 0x18a], dl
mov byte [esp + 0x18b], 0xe0
mov byte [esp + 0x18c], 0x98
mov byte [esp + 0x18d], 3
mov byte [esp + 0x18f], 0x8c
mov dword [esp + 0x190], ecx
mov dword [esp + 0x194], str.MsdmAddress
mov dword [esp + 0x198], 0xfd21bf2b
mov byte [esp + 0x1a0], 0xae
mov byte [esp + 0x1a1], 0xe3
mov byte [esp + 0x1a2], 0xc6
mov byte [esp + 0x1a3], al
mov byte [esp + 0x1a4], 0x58
mov byte [esp + 0x1a5], 0x33
mov byte [esp + 0x1a6], 0x92
mov byte [esp + 0x1a7], 0x39
mov dword [esp + 0x1a8], ecx
mov dword [esp + 0x1ac], str.IrsiInfo
mov dword [esp + 0x1b0], 0x5bce4c83
mov byte [esp + 0x1b8], 0x63
mov byte [esp + 0x1b9], 0xb4
mov byte [esp + 0x1ba], 0x67
mov byte [esp + 0x1bb], 0x2c
mov byte [esp + 0x1bc], al
mov byte [esp + 0x1bd], 0x47
mov byte [esp + 0x1be], 0x42
mov byte [esp + 0x1bf], cl
mov dword [esp + 0x1c0], ecx
mov dword [esp + 0x1c4], 0x43e164
mov dword [esp + 0x1c8], edx
mov word [esp + 0x1cc], si
mov word [esp + 0x1ce], si
mov byte [esp + 0x1d0], dl
mov byte [esp + 0x1d1], dl
mov byte [esp + 0x1d2], dl
mov byte [esp + 0x1d3], dl
mov byte [esp + 0x1d4], dl
mov byte [esp + 0x1d5], dl
mov byte [esp + 0x1d6], dl
mov byte [esp + 0x1d7], dl
mov dword [esp + 0x1d8], ecx
xor ebx, ebx
lea ebp, [esp + 0x14]
lea esp, [esp]
mov esi, dword [ebp]
mov ecx, dword [esp + 0x1e4]
lea ebx, [ebx]
mov di, word [ecx]
cmp di, word [esi]
jne 0x40cf76
cmp di, dx
je 0x40cf72
mov di, word [ecx + 2]
cmp di, word [esi + 2]
jne 0x40cf76
add ecx, 4
add esi, 4
cmp di, dx
jne 0x40cf50
xor ecx, ecx
jmp 0x40cf7b
sbb ecx, ecx
sbb ecx, 0xffffffff
cmp ecx, edx
je 0x40cfc1
add ebx, eax
add ebp, 0x18
cmp ebx, 0x12
jl 0x40cf40
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov dword [ecx], edx
mov edx, dword [esp + 0x1c]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x20]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x24]
mov dword [ecx + 0xc], edx
mov ecx, dword [esp + 0x1dc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0041a25b
add esp, 0x1d0
ret
mov edx, dword [esp + 0x10]
lea ecx, [ebx + ebx*2]
mov esi, dword [esp + ecx*8 + 0x18]
lea ecx, [esp + ecx*8 + 0x18]
mov dword [edx], esi
mov esi, dword [ecx + 4]
mov dword [edx + 4], esi
mov esi, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov dword [edx + 8], esi
mov dword [edx + 0xc], ecx
jmp 0x40cfa8