Function at 0x4136dc
Capabilities:
Contain obfuscated stackstrings
Get common file path
Get program files directory
Get startup folder
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4597a1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x164
push edi
mov dword [ebp - 0x160], ecx
mov eax, dword [ebp + 8]
push eax
push 0x66
mov ecx, dword [ebp - 0x160]
call fcn.0044c91f
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x160]
add ecx, 0x5c
call fcn.0040d1e0
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x160]
add ecx, 0xb8
call fcn.0040d1e0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x160]
add ecx, 0x114
call fcn.0040d1e0
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x160]
add ecx, 0x170
call fcn.0040d1e0
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x160]
add ecx, 0x208
call fcn.00404cc0
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x160]
add ecx, 0x20c
call fcn.00404cc0
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x160]
add ecx, 0x210
call fcn.00404cc0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x160]
add ecx, 0x214
call fcn.00404cc0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x160]
add ecx, 0x218
call fcn.00404cc0
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x160]
add ecx, 0x21c
call fcn.00404cc0
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x160]
add ecx, 0x220
call fcn.00404cc0
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x160]
add ecx, 0x224
call fcn.00404cc0
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x160]
add ecx, 0x228
call fcn.00404cc0
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x160]
add ecx, 0x22c
call fcn.00404cc0
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x160]
add ecx, 0x230
call fcn.00404cc0
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x160]
add ecx, 0x234
call fcn.00404cc0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x160]
add ecx, 0x238
call fcn.00404cc0
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x160]
add ecx, 0x23c
call fcn.00404cc0
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x160]
add ecx, 0x240
call fcn.00404cc0
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x160]
add ecx, 0x244
call fcn.00404cc0
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x160]
add ecx, 0x248
call fcn.00404cc0
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x160]
add ecx, 0x24c
call fcn.00404cc0
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x160]
add ecx, 0x254
call fcn.00404cc0
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x160]
add ecx, 0x258
call fcn.00404cc0
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x160]
add ecx, 0x25c
call fcn.00404cc0
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x160]
add ecx, 0x260
call fcn.00404cc0
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x160]
add ecx, 0x264
call fcn.00404cc0
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x160]
add ecx, 0x268
call fcn.00404cc0
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x160]
add ecx, 0x26c
call fcn.00404cc0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x160]
add ecx, 0x270
call fcn.00404cc0
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x160]
add ecx, 0x274
call fcn.00404cc0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x160]
add ecx, 0x278
call fcn.00404cc0
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x160]
add ecx, 0x27c
call fcn.00404cc0
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x160]
add ecx, 0x280
call fcn.00404cc0
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x160]
add ecx, 0x284
call fcn.00404cc0
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x160]
add ecx, 0x288
call fcn.00404cc0
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x160]
add ecx, 0x28c
call fcn.00404cc0
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x160]
add ecx, 0x290
call fcn.00404cc0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x160]
add ecx, 0x294
call fcn.00404cc0
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x160]
add ecx, 0x298
call fcn.00404cc0
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x160]
add ecx, 0x29c
call fcn.00404cc0
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x160]
add ecx, 0x2ac
call fcn.00404cc0
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x160]
add ecx, 0x3c4
call fcn.00404cc0
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x160]
add ecx, 0x3c8
call fcn.00404cc0
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x160]
add ecx, 0x3cc
call fcn.00404cc0
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x160]
add ecx, 0x3d0
call fcn.00404cc0
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x160]
add ecx, 0x3d4
call fcn.00404cc0
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x160]
add ecx, 0x3d8
call fcn.00404cc0
mov byte [ebp - 4], 0x30
mov ecx, dword [ebp - 0x160]
add ecx, 0x3dc
call fcn.00404cc0
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x160]
add ecx, 0x3e0
call fcn.00404cc0
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x160]
add ecx, 0x3e4
call fcn.00404cc0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x160]
add ecx, 0x3e8
call fcn.00404cc0
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x160]
add ecx, 0x3ec
call fcn.00404cc0
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x160]
add ecx, 0x3f0
call fcn.00404cc0
mov byte [ebp - 4], 0x36
mov ecx, dword [ebp - 0x160]
add ecx, 0x3f4
call fcn.00404cc0
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x160]
add ecx, 0x3f8
call fcn.00404cc0
mov byte [ebp - 4], 0x38
mov ecx, dword [ebp - 0x160]
add ecx, 0x3fc
call fcn.00404cc0
mov byte [ebp - 4], 0x39
mov ecx, dword [ebp - 0x160]
add ecx, 0x400
call fcn.00404cc0
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x160]
add ecx, 0x404
call fcn.00404cc0
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0x160]
add ecx, 0x408
call fcn.00404cc0
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0x160]
add ecx, 0x40c
call fcn.00404cc0
mov byte [ebp - 4], 0x3d
mov ecx, dword [ebp - 0x160]
add ecx, 0x410
call fcn.00404cc0
mov byte [ebp - 4], 0x3e
mov ecx, dword [ebp - 0x160]
add ecx, 0x414
call fcn.00404cc0
mov byte [ebp - 4], 0x3f
mov ecx, dword [ebp - 0x160]
add ecx, 0x418
call fcn.00404cc0
mov byte [ebp - 4], 0x40
mov ecx, dword [ebp - 0x160]
add ecx, 0x41c
call fcn.00404cc0
mov byte [ebp - 4], 0x41
mov ecx, dword [ebp - 0x160]
add ecx, 0x420
call fcn.00404cc0
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp - 0x160]
add ecx, 0x424
call fcn.00404cc0
mov byte [ebp - 4], 0x43
mov ecx, dword [ebp - 0x160]
add ecx, 0x428
call fcn.00404cc0
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0x160]
add ecx, 0x42c
call fcn.00404cc0
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x160]
add ecx, 0x430
call fcn.00404cc0
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x160]
add ecx, 0x434
call fcn.00404cc0
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x160]
add ecx, 0x438
call fcn.00404cc0
mov byte [ebp - 4], 0x48
mov ecx, dword [ebp - 0x160]
add ecx, 0x43c
call fcn.00404cc0
mov byte [ebp - 4], 0x49
mov ecx, dword [ebp - 0x160]
add ecx, 0x440
call fcn.00404cc0
mov byte [ebp - 4], 0x4a
mov ecx, dword [ebp - 0x160]
add ecx, 0x444
call fcn.00404cc0
mov byte [ebp - 4], 0x4b
push fcn.0045035d
push fcn.00404cc0
push 4
push 4
mov ecx, dword [ebp - 0x160]
add ecx, 0x448
push ecx
call fcn.0043dedb
mov byte [ebp - 4], 0x4c
push fcn.0045035d
push fcn.00404cc0
push 4
push 4
mov edx, dword [ebp - 0x160]
add edx, 0x458
push edx
call fcn.0043dedb
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x160]
add ecx, 0x470
call fcn.0040cfa0
mov byte [ebp - 4], 0x4e
mov ecx, dword [ebp - 0x160]
add ecx, 0x490
call fcn.00404cc0
mov byte [ebp - 4], 0x4f
mov ecx, dword [ebp - 0x160]
add ecx, 0x494
call fcn.00404cc0
mov byte [ebp - 4], 0x50
push 0
mov ecx, dword [ebp - 0x160]
add ecx, 0x498
call fcn.00407690
mov byte [ebp - 4], 0x51
mov ecx, dword [ebp - 0x160]
add ecx, 0x11394
call fcn.0040cf80
mov ecx, dword [ebp - 0x160]
add ecx, 0x113a4
call fcn.0040cf80
mov ecx, dword [ebp - 0x160]
add ecx, 0x113b4
call fcn.0040cf80
push fcn.0040cf80
push 6
push 0x10
mov eax, dword [ebp - 0x160]
add eax, 0x113c4
push eax
call fcn.00435500
mov ecx, dword [ebp - 0x160]
add ecx, 0x11544
call fcn.00404cc0
mov byte [ebp - 4], 0x52
mov ecx, dword [ebp - 0x160]
add ecx, 0x11548
call fcn.00404cc0
mov byte [ebp - 4], 0x53
mov ecx, dword [ebp - 0x160]
add ecx, 0x1154c
call fcn.00404cc0
mov byte [ebp - 4], 0x54
mov ecx, dword [ebp - 0x160]
add ecx, 0x11550
call fcn.00404cc0
mov byte [ebp - 4], 0x55
mov ecx, dword [ebp - 0x160]
add ecx, 0x11554
call fcn.00404cc0
mov byte [ebp - 4], 0x56
mov ecx, dword [ebp - 0x160]
add ecx, 0x11558
call fcn.00404cc0
mov byte [ebp - 4], 0x57
mov ecx, dword [ebp - 0x160]
add ecx, 0x1155c
call fcn.00404cc0
mov byte [ebp - 4], 0x58
mov ecx, dword [ebp - 0x160]
add ecx, 0x11560
call fcn.00404cc0
mov byte [ebp - 4], 0x59
mov ecx, dword [ebp - 0x160]
add ecx, 0x11564
call fcn.00404cc0
mov byte [ebp - 4], 0x5a
mov ecx, dword [ebp - 0x160]
add ecx, 0x11568
call fcn.00404cc0
mov byte [ebp - 4], 0x5b
mov ecx, dword [ebp - 0x160]
add ecx, 0x1156c
call fcn.00404cc0
mov byte [ebp - 4], 0x5c
mov ecx, dword [ebp - 0x160]
add ecx, 0x11570
call fcn.00404cc0
mov byte [ebp - 4], 0x5d
mov ecx, dword [ebp - 0x160]
add ecx, 0x115a4
call fcn.00404cc0
mov byte [ebp - 4], 0x5e
mov ecx, dword [ebp - 0x160]
add ecx, 0x115a8
call fcn.0040cfa0
mov byte [ebp - 4], 0x5f
mov ecx, dword [ebp - 0x160]
mov dword [ecx], method.CDialog.virtual_0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x1cc], 0xffffffff
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x1d0], 0xffffffff
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x1d4], 0xffffffff
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x1d8], 0xffffffff
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x1dc], 0xffffffff
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x1e0], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x1e4], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x1e8], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x1ec], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x1f0], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x1f4], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x1f8], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x1fc], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x200], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x204], 0
push 0x47232c
mov ecx, dword [ebp - 0x160]
add ecx, 0x208
call fcn.004504e6
push 0x472330
mov ecx, dword [ebp - 0x160]
add ecx, 0x20c
call fcn.004504e6
push 0x472334
mov ecx, dword [ebp - 0x160]
add ecx, 0x210
call fcn.004504e6
push 0x472338
mov ecx, dword [ebp - 0x160]
add ecx, 0x214
call fcn.004504e6
push 0x47233c
mov ecx, dword [ebp - 0x160]
add ecx, 0x218
call fcn.004504e6
push 0x472340
mov ecx, dword [ebp - 0x160]
add ecx, 0x21c
call fcn.004504e6
push 0x472344
mov ecx, dword [ebp - 0x160]
add ecx, 0x220
call fcn.004504e6
push 0x472348
mov ecx, dword [ebp - 0x160]
add ecx, 0x224
call fcn.004504e6
push 0x47234c
mov ecx, dword [ebp - 0x160]
add ecx, 0x228
call fcn.004504e6
push 0x472350
mov ecx, dword [ebp - 0x160]
add ecx, 0x22c
call fcn.004504e6
push 0x472354
mov ecx, dword [ebp - 0x160]
add ecx, 0x230
call fcn.004504e6
push 0x472358
mov ecx, dword [ebp - 0x160]
add ecx, 0x234
call fcn.004504e6
push 0x47235c
mov ecx, dword [ebp - 0x160]
add ecx, 0x238
call fcn.004504e6
push 0x472360
mov ecx, dword [ebp - 0x160]
add ecx, 0x23c
call fcn.004504e6
push 0x472364
mov ecx, dword [ebp - 0x160]
add ecx, 0x240
call fcn.004504e6
push 0x472368
mov ecx, dword [ebp - 0x160]
add ecx, 0x244
call fcn.004504e6
push 0x47236c
mov ecx, dword [ebp - 0x160]
add ecx, 0x248
call fcn.004504e6
push 0x472370
mov ecx, dword [ebp - 0x160]
add ecx, 0x24c
call fcn.004504e6
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x250], 0xffffffff
push 0x472374
mov ecx, dword [ebp - 0x160]
add ecx, 0x254
call fcn.004504e6
push 0x472378
mov ecx, dword [ebp - 0x160]
add ecx, 0x258
call fcn.004504e6
push 0x47237c
mov ecx, dword [ebp - 0x160]
add ecx, 0x25c
call fcn.004504e6
push 0x472380
mov ecx, dword [ebp - 0x160]
add ecx, 0x260
call fcn.004504e6
push 0x472384
mov ecx, dword [ebp - 0x160]
add ecx, 0x264
call fcn.004504e6
push 0x472388
mov ecx, dword [ebp - 0x160]
add ecx, 0x268
call fcn.004504e6
push 0x47238c
mov ecx, dword [ebp - 0x160]
add ecx, 0x26c
call fcn.004504e6
push 0x472390
mov ecx, dword [ebp - 0x160]
add ecx, 0x270
call fcn.004504e6
push 0x472394
mov ecx, dword [ebp - 0x160]
add ecx, 0x274
call fcn.004504e6
push 0x472398
mov ecx, dword [ebp - 0x160]
add ecx, 0x278
call fcn.004504e6
push 0x47239c
mov ecx, dword [ebp - 0x160]
add ecx, 0x27c
call fcn.004504e6
push 0x4723a0
mov ecx, dword [ebp - 0x160]
add ecx, 0x280
call fcn.004504e6
push 0x4723a4
mov ecx, dword [ebp - 0x160]
add ecx, 0x284
call fcn.004504e6
push 0x4723a8
mov ecx, dword [ebp - 0x160]
add ecx, 0x288
call fcn.004504e6
push 0x4723ac
mov ecx, dword [ebp - 0x160]
add ecx, 0x28c
call fcn.004504e6
push 0x4723b0
mov ecx, dword [ebp - 0x160]
add ecx, 0x290
call fcn.004504e6
push 0x4723b4
mov ecx, dword [ebp - 0x160]
add ecx, 0x294
call fcn.004504e6
push 0x4723b8
mov ecx, dword [ebp - 0x160]
add ecx, 0x298
call fcn.004504e6
push 0x4723bc
mov ecx, dword [ebp - 0x160]
add ecx, 0x29c
call fcn.004504e6
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2a0], 0xffffffff
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2a4], 0xffffffff
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2a8], 0
push 0x4723c0
mov ecx, dword [ebp - 0x160]
add ecx, 0x2ac
call fcn.004504e6
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2b0], 0xffffffff
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2b4], 0xffffffff
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2b8], 0xffffffff
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2bc], 0xffffffff
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2a4], 0xffffffff
push 0x80
call fcn.0040cf90
mov ecx, eax
call fcn.0040d1a0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2c0], eax
mov byte [ebp - 0x14c], 0
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x14b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0
push 0x26
lea eax, [ebp - 0x14c]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathA]
mov ecx, dword [str.ISP_Tool]
push ecx
mov edx, dword [str.Realtek]
push edx
lea eax, [ebp - 0x14c]
push eax
push str._s_s_s
mov ecx, dword [ebp - 0x160]
add ecx, 0x490
push ecx
call fcn.0044b146
add esp, 0x14
mov edx, dword [str.ispfile]
push edx
push 0x46e088
mov eax, dword [ebp - 0x160]
add eax, 0x490
push eax
lea ecx, [ebp - 0x154]
push ecx
call fcn.004505f2
mov dword [ebp - 0x164], eax
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x168], edx
mov byte [ebp - 4], 0x60
mov eax, dword [ebp - 0x168]
push eax
lea ecx, [ebp - 0x158]
push ecx
call fcn.004505f2
mov dword [ebp - 0x16c], eax
mov edx, dword [ebp - 0x16c]
mov dword [ebp - 0x170], edx
mov byte [ebp - 4], 0x61
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [ebp - 0x160]
add ecx, 0x494
call fcn.00450496
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x158]
call fcn.0045035d
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x154]
call fcn.0045035d
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2f0], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2f4], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2f8], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2fc], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x300], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x304], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x308], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x30c], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x310], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2cc], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2d0], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2d4], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2d8], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2dc], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2e0], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2e4], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x2e8], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x2ec], 0
push 0x4723c4
mov ecx, dword [ebp - 0x160]
add ecx, 0x424
call fcn.004504e6
push 0x4723c8
mov ecx, dword [ebp - 0x160]
add ecx, 0x428
call fcn.004504e6
push 0x4723cc
mov ecx, dword [ebp - 0x160]
add ecx, 0x42c
call fcn.004504e6
push 0x4723d0
mov ecx, dword [ebp - 0x160]
add ecx, 0x430
call fcn.004504e6
push 0x4723d4
mov ecx, dword [ebp - 0x160]
add ecx, 0x434
call fcn.004504e6
push 0x4723d8
mov ecx, dword [ebp - 0x160]
add ecx, 0x438
call fcn.004504e6
push 0x4723dc
mov ecx, dword [ebp - 0x160]
add ecx, 0x43c
call fcn.004504e6
push 0x4723e0
mov ecx, dword [ebp - 0x160]
add ecx, 0x440
call fcn.004504e6
push 0x4723e4
mov ecx, dword [ebp - 0x160]
add ecx, 0x444
call fcn.004504e6
mov dword [ebp - 0x150], 0
jmp 0x414730
mov ecx, dword [ebp - 0x150]
add ecx, 1
mov dword [ebp - 0x150], ecx
cmp dword [ebp - 0x150], 4
jge 0x414758
push 0x4723e8
mov edx, dword [ebp - 0x150]
mov eax, dword [ebp - 0x160]
lea ecx, [eax + edx*4 + 0x448]
call fcn.004504e6
jmp 0x414721
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x394], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x398], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x39c], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x3a0], 0
push 0x4723ec
mov ecx, dword [ebp - 0x160]
add ecx, 0x404
call fcn.004504e6
push 0x4723f0
mov ecx, dword [ebp - 0x160]
add ecx, 0x408
call fcn.004504e6
push 0x4723f4
mov ecx, dword [ebp - 0x160]
add ecx, 0x40c
call fcn.004504e6
push 0x4723f8
mov ecx, dword [ebp - 0x160]
add ecx, 0x410
call fcn.004504e6
push 0x4723fc
mov ecx, dword [ebp - 0x160]
add ecx, 0x414
call fcn.004504e6
push 0x472400
mov ecx, dword [ebp - 0x160]
add ecx, 0x418
call fcn.004504e6
push 0x472404
mov ecx, dword [ebp - 0x160]
add ecx, 0x41c
call fcn.004504e6
push 0x472408
mov ecx, dword [ebp - 0x160]
add ecx, 0x420
call fcn.004504e6
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x3a4], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x3a8], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x3ac], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x3b0], 0
push 0x47240c
mov ecx, dword [ebp - 0x160]
add ecx, 0x3e4
call fcn.004504e6
push 0x472410
mov ecx, dword [ebp - 0x160]
add ecx, 0x3e8
call fcn.004504e6
push 0x472414
mov ecx, dword [ebp - 0x160]
add ecx, 0x3ec
call fcn.004504e6
push 0x472418
mov ecx, dword [ebp - 0x160]
add ecx, 0x3f0
call fcn.004504e6
push 0x47241c
mov ecx, dword [ebp - 0x160]
add ecx, 0x3f4
call fcn.004504e6
push 0x472420
mov ecx, dword [ebp - 0x160]
add ecx, 0x3f8
call fcn.004504e6
push 0x472424
mov ecx, dword [ebp - 0x160]
add ecx, 0x3fc
call fcn.004504e6
push 0x472428
mov ecx, dword [ebp - 0x160]
add ecx, 0x400
call fcn.004504e6
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x3b4], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x3b8], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x3bc], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x3c0], 0
push 0x47242c
mov ecx, dword [ebp - 0x160]
add ecx, 0x3c4
call fcn.004504e6
push 0x472430
mov ecx, dword [ebp - 0x160]
add ecx, 0x3c8
call fcn.004504e6
push 0x472434
mov ecx, dword [ebp - 0x160]
add ecx, 0x3cc
call fcn.004504e6
push 0x472438
mov ecx, dword [ebp - 0x160]
add ecx, 0x3d0
call fcn.004504e6
push 0x47243c
mov ecx, dword [ebp - 0x160]
add ecx, 0x3d4
call fcn.004504e6
push 0x472440
mov ecx, dword [ebp - 0x160]
add ecx, 0x3d8
call fcn.004504e6
push 0x472444
mov ecx, dword [ebp - 0x160]
add ecx, 0x3dc
call fcn.004504e6
push 0x472448
mov ecx, dword [ebp - 0x160]
add ecx, 0x3e0
call fcn.004504e6
mov dword [ebp - 0x150], 0
jmp 0x414a43
mov ecx, dword [ebp - 0x150]
add ecx, 1
mov dword [ebp - 0x150], ecx
cmp dword [ebp - 0x150], 0x20
jge 0x414a65
mov edx, dword [ebp - 0x150]
mov eax, dword [ebp - 0x160]
mov dword [eax + edx*4 + 0x314], 0
jmp 0x414a34
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x50c], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x488], 1
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x478], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x47c], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x480], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x484], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x48c], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x46c], 1
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x468], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2c4], 0
push 0x120
push 0
mov edx, dword [ebp - 0x160]
add edx, 0x11424
push edx
call fcn.0043d9d0
add esp, 0xc
push 0x89
push 0x87
push 0x88
push 0x87
mov ecx, dword [ebp - 0x160]
add ecx, 0x170
call fcn.0040d3e0
push 0x98
push 0x99
push 0x97
push 0x99
mov ecx, dword [ebp - 0x160]
add ecx, 0x114
call fcn.0040d3e0
push 0x9c
push 0x9d
push 0x9b
push 0x9d
mov ecx, dword [ebp - 0x160]
add ecx, 0xb8
call fcn.0040d3e0
push 0xa1
push 0xa0
push 0xa2
push 0xa0
mov ecx, dword [ebp - 0x160]
add ecx, 0x5c
call fcn.0040d3e0
mov byte [ebp - 0x31], 0x86
mov byte [ebp - 0x2f], 2
mov dword [ebp - 0x40], 0
push 0x46e08c
call fcn.0043de60
add esp, 4
push eax
push str.System
lea eax, [ebp - 0x2c]
push eax
call fcn.0043da30
add esp, 0xc
mov dword [ebp - 0x48], 0x12
mov byte [ebp - 0x34], 0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 0x30], 1
mov byte [ebp - 0x2d], 0x22
mov byte [ebp - 0x2e], 2
mov byte [ebp - 0x32], 0
mov byte [ebp - 0x33], 0
mov dword [ebp - 0x38], 0x2bc
mov dword [ebp - 0x44], 8
lea ecx, [ebp - 0x48]
push ecx
mov ecx, dword [ebp - 0x160]
add ecx, 0x470
call fcn.0040d0e0
push 0x46e09c
push 0x20
push 0
push 0
push 2
push 0
push 0
push 0
push 0
push 0x2bc
push 0
push 0
push 0xb
push 0x23
mov ecx, dword [ebp - 0x160]
add ecx, 0x115a8
call fcn.00435550
push 0x4c
call fcn.00450886
add esp, 4
mov dword [ebp - 0x15c], eax
mov edx, dword [ebp - 0x160]
mov eax, dword [ebp - 0x15c]
mov dword [edx + 0x11588], eax
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x1158c], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x11590], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x11594], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x11598], 0
mov edx, dword [ebp - 0x160]
mov dword [edx + 0x1159c], 0
mov eax, dword [ebp - 0x160]
mov dword [eax + 0x115a0], 0
mov ecx, dword [ebp - 0x160]
mov dword [ecx + 0x2bc], 1
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x160]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
mov esp, ebp
pop ebp
ret 4