Function at 0x417b20
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x4a0
mov esi, esp
mov eax, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov dword [esi + 0x3cc], 0x441940
mov byte [esi + 6], 0
mov al, byte [esi + 0x9c]
mov byte [esi + 0xa0], al
mov byte [esi + 0x190], 0xb3
mov byte [esi + 0x191], 0x59
mov byte [esi + 0x192], 0xb7
mov byte [esi + 0x193], 0x5b
mov byte [esi + 0x194], 0xdd
mov byte [esi + 0x195], 0x45
mov byte [esi + 0x196], 0x9a
mov byte [esi + 0x197], 0x47
mov byte [esi + 0x198], 0x96
mov byte [esi + 0x199], 0x41
mov byte [esi + 0x19a], 0xae
mov byte [esi + 0x19b], 0x43
mov byte [esi + 0x19c], 0xae
mov byte [esi + 0x19d], 0x4d
mov byte [esi + 0x19e], 0x4e
mov byte [esi + 0x19f], 0x4f
mov dword [esi + 0x1a4], 0
mov dword [esi + 0x1a0], 0
mov dword [esi + 0xc], 0
mov eax, dword [esi + 0xc]
cmp eax, 0x18
jae 0x417c2c
jmp 0x417bec
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0xc]
movzx ecx, byte [esi + ecx + 0x190]
mov edx, eax
add edx, 0x85d7dc8c
lea eax, [eax + ecx - 0x7a282374]
and edx, ecx
add edx, edx
sub eax, edx
add al, 0x2c
mov ecx, dword [esi + 0xc]
mov byte [esi + ecx + 0x190], al
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
cmp eax, 0x18
jb 0x417bec
jmp 0x417c2c
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x190]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004142b0
add esp, 0xc
mov cl, byte [esi + 6]
or cl, al
mov byte [esi + 6], cl
mov al, byte [esi + 0x98]
mov byte [esi + 0xa4], al
mov byte [esi + 0xc0], 0xb3
mov byte [esi + 0xc1], 0x55
mov byte [esi + 0xc2], 0xcf
mov byte [esi + 0xc3], 0x4b
mov byte [esi + 0xc4], 0xdc
mov byte [esi + 0xc5], 0x49
mov byte [esi + 0xc6], 0xdc
mov byte [esi + 0xc7], 0x4f
mov byte [esi + 0xc8], 0x81
mov byte [esi + 0xc9], 0x4d
mov byte [esi + 0xca], 0x9e
mov byte [esi + 0xcb], 0x43
mov byte [esi + 0xcc], 0xa6
mov byte [esi + 0xcd], 0x41
mov byte [esi + 0xce], 0xa6
mov byte [esi + 0xcf], 0x47
mov byte [esi + 0xd0], 0x46
mov byte [esi + 0xd1], 0x45
mov word [esi + 0xde], 0
mov dword [esi + 0xda], 0
mov dword [esi + 0xd6], 0
mov dword [esi + 0xd2], 0
mov dword [esi + 0x10], 0
mov eax, dword [esi + 0x10]
cmp eax, 0x20
jae 0x417d46
jmp 0x417d18
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x10]
mov cl, byte [esi + ecx + 0xc0]
add al, 0xd
xor al, cl
add al, 0xa5
mov ecx, dword [esi + 0x10]
mov byte [esi + ecx + 0xc0], al
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0x10]
cmp eax, 0x20
jb 0x417d18
jmp 0x417d46
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0xc0]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004142b0
add esp, 0xc
mov cl, byte [esi + 6]
or cl, al
mov byte [esi + 6], cl
mov al, byte [esi + 0x94]
mov byte [esi + 0xa8], al
mov byte [esi + 0x150], 0x2c
mov byte [esi + 0x151], 0xd5
mov byte [esi + 0x152], 0x25
mov byte [esi + 0x153], 0xeb
mov byte [esi + 0x154], 0x1c
mov byte [esi + 0x155], 0xe9
mov byte [esi + 0x156], 0x1b
mov byte [esi + 0x157], 0xef
mov byte [esi + 0x158], 0x16
mov byte [esi + 0x159], 0xed
mov byte [esi + 0x15a], 0x13
mov byte [esi + 0x15b], 0xe3
mov byte [esi + 0x15c], 0x17
mov byte [esi + 0x15d], 0xe1
mov byte [esi + 0x15e], 0x14
mov byte [esi + 0x15f], 0xe7
mov byte [esi + 0x160], 0x17
mov byte [esi + 0x161], 0xe5
mov byte [esi + 0x162], 0x12
mov byte [esi + 0x163], 0xfb
mov byte [esi + 0x164], 0x75
mov byte [esi + 0x165], 0xf9
mov byte [esi + 0x166], 0xca
mov byte [esi + 0x167], 0xff
mov byte [esi + 0x168], 0xb
mov byte [esi + 0x169], 0xfd
mov byte [esi + 0x16a], 0xb
mov byte [esi + 0x16b], 0xf3
mov byte [esi + 0x16c], 0xe
mov byte [esi + 0x16d], 0xf1
mov byte [esi + 0x16e], 0xf
mov byte [esi + 0x16f], 0xf7
mov byte [esi + 0x170], 2
mov byte [esi + 0x171], 0xf5
mov byte [esi + 0x172], 0xf
mov byte [esi + 0x173], 0x8b
mov byte [esi + 0x174], 0x8a
mov byte [esi + 0x175], 0x89
mov dword [esi + 0x189], 0
mov dword [esi + 0x186], 0
mov dword [esi + 0x182], 0
mov dword [esi + 0x17e], 0
mov dword [esi + 0x17a], 0
mov dword [esi + 0x176], 0
mov dword [esi + 0x14], 0
mov eax, dword [esi + 0x14]
cmp eax, 0x3d
jae 0x417f13
jmp 0x417ed3
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [esi + ecx + 0x150]
mov edx, eax
add edx, 0xfa56cc9d
lea eax, [eax + ecx - 0x5a93363]
and edx, ecx
add edx, edx
sub eax, edx
add al, 0xb5
mov ecx, dword [esi + 0x14]
mov byte [esi + ecx + 0x150], al
mov eax, dword [esi + 0x14]
inc eax
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x14]
cmp eax, 0x3d
jb 0x417ed3
jmp 0x417f13
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x150]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004142b0
add esp, 0xc
movzx eax, al
movzx ecx, byte [esi + 6]
mov edx, eax
not edx
mov edi, ecx
and edi, edx
mov edx, ecx
xor edx, eax
add ecx, edx
sub ecx, edi
setne byte [esi + 6]
mov al, byte [esi + 0x90]
mov byte [esi + 0xac], al
mov byte [esi + 0x110], 0xb3
mov byte [esi + 0x111], 0x55
mov byte [esi + 0x112], 0xc5
mov byte [esi + 0x113], 0x4b
mov byte [esi + 0x114], 0xdb
mov byte [esi + 0x115], 0x49
mov byte [esi + 0x116], 0xd5
mov byte [esi + 0x117], 0x4f
mov byte [esi + 0x118], 0xd1
mov byte [esi + 0x119], 0x4d
mov byte [esi + 0x11a], 0xd7
mov byte [esi + 0x11b], 0x43
mov byte [esi + 0x11c], 0xd7
mov byte [esi + 0x11d], 0x41
mov byte [esi + 0x11e], 0x92
mov byte [esi + 0x11f], 0x47
mov byte [esi + 0x120], 0xd3
mov byte [esi + 0x121], 0x45
mov byte [esi + 0x122], 0xd3
mov byte [esi + 0x123], 0x7b
mov byte [esi + 0x124], 0xe6
mov byte [esi + 0x125], 0x79
mov byte [esi + 0x126], 0xe7
mov byte [esi + 0x127], 0x7f
mov byte [esi + 0x128], 0xea
mov byte [esi + 0x129], 0x7d
mov byte [esi + 0x12a], 0xe7
mov byte [esi + 0x12b], 0x73
mov byte [esi + 0x12c], 0x72
mov byte [esi + 0x12d], 0x71
mov word [esi + 0x136], 0
mov dword [esi + 0x132], 0
mov dword [esi + 0x12e], 0
mov dword [esi + 0x18], 0
mov eax, dword [esi + 0x18]
cmp eax, 0x28
jae 0x4180bb
jmp 0x41805c
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0x18]
movzx edx, byte [esi + eax + 0x110]
mov edi, ecx
add edi, 0x96e6a10d
lea eax, [ecx + edx - 0x69195ef3]
and edi, edx
add ecx, 0xd
and ecx, edx
add ecx, edi
mov edx, eax
not edx
mov edi, ecx
and edi, edx
not ecx
and eax, ecx
sub eax, edi
mov ecx, eax
xor ecx, 0xa4
and eax, 0x24
lea eax, [ecx + eax*2]
inc al
mov ecx, dword [esi + 0x18]
mov byte [esi + ecx + 0x110], al
mov eax, dword [esi + 0x18]
inc eax
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x18]
cmp eax, 0x28
jb 0x41805c
jmp 0x4180bb
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x110]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004142b0
add esp, 0xc
movzx edx, al
movzx eax, byte [esi + 6]
mov ecx, eax
not ecx
mov edi, edx
not edi
or eax, 0x2a
or edx, 0x2a
xor eax, edx
or ecx, edi
not ecx
or eax, ecx
mov byte [esi + 6], al
mov al, byte [esi + 0x8c]
mov byte [esi + 0xb0], al
mov byte [esi + 0x1b0], 0x38
mov byte [esi + 0x1b1], 0x4d
mov byte [esi + 0x1b2], 0x39
mov byte [esi + 0x1b3], 0x4b
mov byte [esi + 0x1b4], 0x23
mov byte [esi + 0x1b5], 0x49
mov byte [esi + 0x1b6], 0x3f
mov byte [esi + 0x1b7], 0x57
mov byte [esi + 0x1b8], 0x26
mov byte [esi + 0x1b9], 0x55
mov byte [esi + 0x1ba], 0x2d
mov byte [esi + 0x1bb], 0x53
mov byte [esi + 0x1bc], 0x62
mov byte [esi + 0x1bd], 0x51
mov byte [esi + 0x1be], 0x28
mov byte [esi + 0x1bf], 0x5f
mov byte [esi + 0x1c0], 0x23
mov byte [esi + 0x1c1], 0x5d
mov byte [esi + 0x1c2], 0x29
mov byte [esi + 0x1c3], 0x5b
mov byte [esi + 0x1c4], 0x2a
mov byte [esi + 0x1c5], 0x59
mov byte [esi + 0x1c6], 0x66
mov byte [esi + 0x1c7], 0x67
mov dword [esi + 0x1d0], 0
mov dword [esi + 0x1cc], 0
mov dword [esi + 0x1c8], 0
mov dword [esi + 0x1c], 0
mov eax, dword [esi + 0x1c]
cmp eax, 0x24
jae 0x41820e
jmp 0x4181e0
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x1c]
mov cl, byte [esi + ecx + 0x1b0]
add al, 0xca
xor al, cl
add al, 0x7a
mov ecx, dword [esi + 0x1c]
mov byte [esi + ecx + 0x1b0], al
mov eax, dword [esi + 0x1c]
inc eax
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x1c]
cmp eax, 0x24
jb 0x4181e0
jmp 0x41820e
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x1b0]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004142b0
add esp, 0xc
movzx eax, al
movzx ecx, byte [esi + 6]
mov edx, eax
not edx
mov edi, ecx
and edi, edx
mov edx, ecx
xor edx, eax
add ecx, edx
sub ecx, edi
setne byte [esi + 6]
mov al, byte [esi + 0x88]
mov byte [esi + 0xb4], al
mov byte [esi + 0x40], 0xc8
mov byte [esi + 0x41], 0x59
mov byte [esi + 0x42], 0xce
mov byte [esi + 0x43], 0x5b
mov byte [esi + 0x44], 0xa5
mov byte [esi + 0x45], 0x45
mov byte [esi + 0x46], 0xa5
mov byte [esi + 0x47], 0x47
mov byte [esi + 0x48], 0xad
mov byte [esi + 0x49], 0x41
mov byte [esi + 0x4a], 0xd1
mov byte [esi + 0x4b], 0x43
mov byte [esi + 0x4c], 0x9a
mov byte [esi + 0x4d], 0x4d
mov byte [esi + 0x4e], 0xdd
mov byte [esi + 0x4f], 0x4f
mov byte [esi + 0x50], 0xd9
mov byte [esi + 0x51], 0x49
mov byte [esi + 0x52], 0xde
mov byte [esi + 0x53], 0x4b
mov byte [esi + 0x54], 0x9d
mov byte [esi + 0x55], 0x75
mov byte [esi + 0x56], 0xea
mov byte [esi + 0x57], 0x77
mov byte [esi + 0x58], 0x9d
mov byte [esi + 0x59], 0x71
mov byte [esi + 0x5a], 0x72
mov byte [esi + 0x5b], 0x73
mov dword [esi + 0x5c], 0
mov dword [esi + 0x20], 0
mov eax, dword [esi + 0x20]
cmp eax, 0x20
jae 0x418319
jmp 0x4182df
mov eax, dword [esi + 0x20]
mov ecx, dword [esi + 0x20]
movzx ecx, byte [esi + ecx + 0x40]
mov edx, eax
add edx, 0xc1b6410c
lea eax, [eax + ecx - 0x3e49bef4]
and edx, ecx
add edx, edx
sub eax, edx
add al, 0xac
mov ecx, dword [esi + 0x20]
mov byte [esi + ecx + 0x40], al
mov eax, dword [esi + 0x20]
inc eax
mov dword [esi + 0x20], eax
mov eax, dword [esi + 0x20]
cmp eax, 0x20
jb 0x4182df
jmp 0x418319
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
sub esp, 0xc
lea edx, [esi + 0x40]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004142b0
add esp, 0xc
movzx ecx, al
movzx eax, byte [esi + 6]
not eax
not ecx
and eax, ecx
not al
mov byte [esi + 6], al
mov eax, dword [ebp + 0x10]
xor ecx, ecx
test eax, eax
sete cl
mov dword [esi + 0x3c8], ecx
mov eax, dword [esi + 0x3cc]
mov ecx, dword [esi + 0x3c8]
mov eax, dword [eax + ecx*4]
mov ecx, dword [0x441948]
xor ecx, 0x90d736de
sub eax, ecx
push eax
mov ecx, esp
mov dword [esi + 0x21c], ecx
mov dword [ecx], 0x44194c
push eax
mov dword [esi + 0x218], esp
push eax
mov ecx, esp
mov dword [esi + 0x22c], ecx
mov dword [ecx], 0x441958
push eax
mov dword [esi + 0x228], esp
push eax
mov ecx, esp
mov dword [esi + 0x224], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441964]
mov dword [esi + 0x220], ecx
push eax
mov ecx, esp
mov dword [esi + 0x238], ecx
mov dword [ecx], 0x44196c
push eax
mov dword [esi + 0x230], esp
push eax
mov ecx, esp
mov dword [esi + 0x23c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [str.bU]
mov dword [esi + 0x234], ecx
push eax
mov ecx, esp
mov dword [esi + 0x244], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441980]
mov dword [esi + 0x240], ecx
push eax
mov ecx, esp
mov dword [esi + 0x24c], ecx
mov dword [ecx], 0x441988
push eax
mov dword [esi + 0x248], esp
push eax
mov ecx, esp
mov dword [esi + 0x254], ecx
mov dword [ecx], 0x441994
push eax
mov dword [esi + 0x250], esp
push eax
mov ecx, esp
mov dword [esi + 0x260], ecx
mov dword [ecx], 0x4419a0
push eax
mov dword [esi + 0x258], esp
push eax
mov ecx, esp
mov dword [esi + 0x264], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x4419ac]
mov dword [esi + 0x25c], ecx
push eax
mov ecx, esp
mov dword [esi + 0x394], ecx
mov dword [ecx], 0x4419b4
push eax
mov dword [esi + 0x390], esp
push eax
mov ecx, esp
mov dword [esi + 0x38c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x4419c0]
mov dword [esi + 0x388], ecx
push eax
mov ecx, esp
mov dword [esi + 0x37c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x4419c8]
mov dword [esi + 0x374], ecx
push eax
mov ecx, esp
mov dword [esi + 0x36c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x4419d0]
mov dword [esi + 0x364], ecx
push eax
mov ecx, esp
mov dword [esi + 0x358], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x4419d8]
mov dword [esi + 0x350], ecx
push eax
mov ecx, esp
mov dword [esi + 0x34c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x4419e0]
mov dword [esi + 0x348], ecx
push eax
mov ecx, esp
mov dword [esi + 0x344], ecx
mov dword [ecx], 0x4419e8
push eax
mov dword [esi + 0x340], esp
push eax
mov ecx, esp
mov dword [esi + 0x33c], ecx
mov dword [ecx], 0x4419f4
push eax
mov dword [esi + 0x338], esp
push eax
mov ecx, esp
mov dword [esi + 0x334], ecx
mov dword [ecx], 0x441a00
push eax
mov dword [esi + 0x330], esp
push eax
mov ecx, esp
mov dword [esi + 0x32c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a0c]
mov dword [esi + 0x328], ecx
push eax
mov ecx, esp
mov dword [esi + 0x324], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a14]
mov dword [esi + 0x320], ecx
push eax
mov ecx, esp
mov dword [esi + 0x31c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a1c]
mov dword [esi + 0x318], ecx
push eax
mov ecx, esp
mov dword [esi + 0x314], ecx
mov dword [ecx], 0x441a24
push eax
mov dword [esi + 0x310], esp
push eax
mov ecx, esp
mov dword [esi + 0x30c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a30]
mov dword [esi + 0x308], ecx
push eax
mov ecx, esp
mov dword [esi + 0x304], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a38]
mov dword [esi + 0x2fc], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2f0], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a40]
mov dword [esi + 0x2e4], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2dc], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a48]
mov dword [esi + 0x2d0], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2c8], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a50]
mov dword [esi + 0x2c0], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2b8], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a58]
mov dword [esi + 0x2ac], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2a4], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a60]
mov dword [esi + 0x2a0], ecx
push eax
mov ecx, esp
mov dword [esi + 0x29c], ecx
mov dword [ecx], 0x441a68
push eax
mov dword [esi + 0x294], esp
push eax
mov ecx, esp
mov dword [esi + 0x288], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a74]
mov dword [esi + 0x280], ecx
push eax
mov ecx, esp
mov dword [esi + 0x27c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a7c]
mov dword [esi + 0x278], ecx
push eax
mov ecx, esp
mov dword [esi + 0x28c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441a84]
mov dword [esi + 0x284], ecx
push eax
mov ecx, esp
mov dword [esi + 0x298], ecx
mov dword [ecx], 0x441a8c
push eax
mov dword [esi + 0x290], esp
push eax
mov ecx, esp
mov dword [esi + 0x2c4], ecx
mov dword [ecx], 0x441a98
push eax
mov dword [esi + 0x2b4], esp
push eax
mov ecx, esp
mov dword [esi + 0x2b0], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441aa4]
mov dword [esi + 0x2a8], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2cc], ecx
mov dword [ecx], 0x441aac
push eax
mov dword [esi + 0x2bc], esp
push eax
mov ecx, esp
mov dword [esi + 0x2d8], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441ab8]
mov dword [esi + 0x2d4], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2e8], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441ac0]
mov dword [esi + 0x2e0], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2f4], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441ac8]
mov dword [esi + 0x2ec], ecx
push eax
mov ecx, esp
mov dword [esi + 0x300], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441ad0]
mov dword [esi + 0x2f8], ecx
push eax
mov ecx, esp
mov dword [esi + 0x35c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441ad8]
mov dword [esi + 0x354], ecx
push eax
mov ecx, esp
mov dword [esi + 0x368], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441ae0]
mov dword [esi + 0x360], ecx
push eax
mov ecx, esp
mov dword [esi + 0x378], ecx
mov dword [ecx], 0x441ae8
push eax
mov dword [esi + 0x370], esp
push eax
mov ecx, esp
mov dword [esi + 0x384], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441af4]
mov dword [esi + 0x380], ecx
push eax
mov ecx, esp
mov dword [esi + 0x39c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441afc]
mov dword [esi + 0x398], ecx
push eax
mov ecx, esp
mov dword [esi + 0x3a4], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441b04]
mov dword [esi + 0x3a0], ecx
push eax
mov ecx, esp
mov dword [esi + 0x3ac], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441b0c]
mov dword [esi + 0x3a8], ecx
push eax
mov edx, esp
mov dword [edx], 0x441790
mov ecx, dword [0x441b14]
mov dword [esi + 0x3b0], ecx
push eax
mov ecx, esp
mov dword [esi + 0x3c4], ecx
mov dword [ecx], 0x441b1c
push eax
mov dword [esi + 0x3c0], esp
push eax
mov ecx, esp
mov dword [esi + 0x144], ecx
mov dword [ecx], 0x441b28
push eax
mov dword [esi + 0x30], esp
push eax
mov edi, esp
mov dword [edi], 0x441790
mov ebx, dword [0x441b34]
push eax
mov ecx, esp
mov dword [esi + 0x26c], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441b3c]
mov dword [esi + 0x268], ecx
push eax
mov ecx, esp
mov dword [esi + 0x274], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441b44]
mov dword [esi + 0x270], ecx
push eax
mov ecx, esp
mov dword [esi + 0x3bc], ecx
mov dword [ecx], 0x441790
mov ecx, dword [0x441b4c]
mov dword [esi + 0x3b8], ecx
jmp eax